Pregunta:
Fecha: 05-06-2018 04:46:29
(En Español)
Notice: A non well formed numeric value encountered
Los calculo lo hace bien, vienen de un formulario pero empezo a tirar ese error.
Busque en Internet y no encuentro una respuesta en concreto, al colocar el @ se evita pero quisiera saber el porque, muchas gracias Votos: 1 - Respuestas: 6 - Vistas: 11 Compartir en: Google Facebook Twitter LinkedIn Link
Multiplicación en PHP[Resuelta]
Hola me surgió un problema al realizar una simple multiplicación y me sale el error.Notice: A non well formed numeric value encountered
Los calculo lo hace bien, vienen de un formulario pero empezo a tirar ese error.
echo $lar=$_POST['largo'].'<br>'; echo $anc=$_POST['ancho'].'<br>'; $m2= $_POST['largo']*$_POST['ancho']. " M2".'<br>'; $medida= 265; $gr=$m2*$medida; echo $gr ." Gr";
Busque en Internet y no encuentro una respuesta en concreto, al colocar el @ se evita pero quisiera saber el porque, muchas gracias Votos: 1 - Respuestas: 6 - Vistas: 11 Compartir en: Google Facebook Twitter LinkedIn Link
Respuestas:
-
Fecha: 05-06-2018 05:43:23 Probé tu código usando PHP 7.0 y no tuve ese error, sin embargo, me suena haberlo visto en PHP 7.2... ¿qué versión estás usando? Votos: 0 - Link respuesta
-
Fecha: 05-06-2018 06:43:54 Ya veo el problema. Es en la línea 10:
$gr=$m2*$medida;
Fijate la definición de este error: http://php.net/manual/es/migration71.other-changes.php, dice que va a dar notice si se intenta una operación aritmética sobre cadenas que terminen en algo que no es un número...
En tu caso, fijate cómo formás $m2:
$m2= $_POST['largo']*$_POST['ancho']. " M2".'<br>';
Al final le estás agregando " M2"... no sé cómo estaba haciendo la cuenta antes :p Votos: 2 - Link respuesta -
Fecha: 05-06-2018 15:47:48 Hola Mauro como estas, gracias por tu respuesta. Ahí cambie eso igualmente me sigue corriendo el error.
<?php $lar=$_POST['largo'].'<br>'; $anc=$_POST['ancho'].'<br>'; $medida= 265; echo "su Largo es: ".$lar."<br>"; echo "Su Ancho es: ".$anc; $gr= ($lar*$anc)*$medida; ?>
la versión que tengo es PHP: 7.1.7 Votos: 0 - Link respuesta -
Fecha: 05-06-2018 21:11:07 No incluyas texto como ya te dijeton, y no veo porque agregas saltos de linea a la llegada post, de verdad no le veo la necesidad, prueba asi:
$lar=$_POST['largo']; $anc=$_POST['ancho']; $medida= 265; echo "su Largo es: ".$lar."<br>"; echo "Su Ancho es: ".$anc; $gr= ($lar*$anc)*$medida;
El asunto es que agregas un saldo de linea a los datos que llegan desde el formulario Votos: 3 - Link respuesta -
Fecha: 06-06-2018 04:37:39 @Carlos: ¡qué bueno que lo viste! Me estaba volviendo loco tratando de entender por qué el error seguía apareciendo :).
Es así @Sebastián, al hacer:
$lar=$_POST['largo'].'<br>'; $anc=$_POST['ancho'].'<br>';
Al momento de la multiplicación se está haciendo:
$gr= ("30<br>"*"50<br>")*$medida;
(Suponiendo que $_POST['largo'] = 30 y $_POST['ancho'] = 50).
De ahí que siga dando el mismo error. Los <br> reservalos para los echo, en otro contexto tienen poca utilidad. Votos: 0 - Link respuesta -
Fecha: 06-06-2018 07:59:51 Es verdad una tontería, los <br> quedaron solo cuando quise mirar los resultados y seguía. me surgió al cambiar y no entendía el porque. Muchas gracias a todos por la aclaración. Votos: 1 - Link respuesta
Para participar activamente de la comunidad primero debes autenticarte, ingresa al sistema.Iniciar Sesión
