Diferencia entre revisiones de «Plantilla:PHP/FormulariosConceptosGenerales»
De WikiEducator
Línea 278: | Línea 278: | ||
$edad; | $edad; | ||
</source> | </source> | ||
− | + | {{MRM_Pregunta| | |
− | '''''¿A | + | '''''¿A partir de esa línea la variable existe?''''' |
− | '''''¿A | + | *La respuesta es que existe pero tiene un valor null |
+ | '''''¿A partir de esa línea la variable ha sido declarada?''''' | ||
+ | *En realidad la respuesta es si, como null | ||
'''''¿Tiene algún valor?''''' | '''''¿Tiene algún valor?''''' | ||
− | + | *La respuesta es que tiene el valor null | |
− | * | + | }} |
+ | *Esto puede crear confusiones que debemos aclarar. '''''null''''', cuando una variable tiene valor null vamos a considerar que no tiene valor, o que no ha sido delcarada. | ||
+ | *Para comprobar probamos el siguiente código | ||
<source lang=php> | <source lang=php> | ||
<?php | <?php | ||
+ | $variable; //Declaramos una variable de tipo null | ||
+ | |||
+ | if (isset($variable)) | ||
+ | echo "OK isset -$variable- <br />"; | ||
+ | else | ||
+ | echo "NO OK isset -$variable- <br />"; | ||
+ | |||
+ | if (empty($variable)) | ||
+ | echo "OK empty La variable -$variable- <br />"; | ||
+ | else | ||
+ | echo "NO OK empty La variable -$variable- <br />"; | ||
+ | |||
+ | if (is_null($variable)) | ||
+ | echo "OK is_null La variable -$variable- <br />"; | ||
+ | else | ||
+ | echo "NO OK is_null La variable -$variable- <br />"; | ||
+ | ?> | ||
+ | </source> | ||
+ | |||
+ | *Probemos a modificar el valor de $variable por los siguientes valores | ||
+ | <source lang=php> | ||
+ | $varialbe = null; | ||
+ | </source> | ||
+ | <source lang=php> | ||
+ | $varialbe =""; | ||
+ | </source> | ||
+ | <source lang=php> | ||
+ | $varialbe =0; | ||
+ | </source> | ||
+ | <source lang=php> | ||
+ | $varialbe = true; | ||
+ | </source> | ||
+ | <source lang=php> | ||
+ | $varialbe = false; | ||
+ | </source> | ||
+ | *A partir de ello podemos concluir y entender lo que hacen las funciones | ||
+ | |||
+ | <source lang =php> | ||
+ | //isset — Determina si una variable está definida y no es NULL | ||
+ | isset($var):bool | ||
+ | //is_null — Comprueba si una variable es NULL | ||
+ | is_null($var):boll | ||
+ | empty() | ||
+ | |||
+ | </source> | ||
+ | |||
+ | *hay que tener cuidado con el concepto de una variable vacía | ||
+ | *En php los siguientes valores asignados a una variable se considerarán valores vacíos | ||
+ | *"" //Una cadena vacía | ||
+ | *0 //El valor 0 como entero o como float | ||
+ | *0.0 | ||
+ | *"0"//La cadena de caracteres formada por el carácter 0 | ||
+ | *NULL //El valor null | ||
+ | *FALSE //El valor booleano false | ||
+ | {{MRM_Actividad|Title=Probando el valor leído de un formulario| | ||
+ | *Realiza una aplicación que leas el valor introducido en una caja de texto | ||
+ | *Has de informar si no ha insertado ningún valor que lo inserte | ||
+ | *Si lo ha insertado lo visualizarás | ||
+ | {{Plagable|hide|Posible solución| | ||
+ | <source lang=php> | ||
+ | <?php | ||
+ | if (isset($_POST['enviar'])) { | ||
+ | $valor = $_POST['valor']; | ||
+ | if ((empty($valor)) && ($valor != "0")) | ||
+ | $msj = "Debes de aportar un valor válido<br />"; | ||
+ | else | ||
+ | $msj = "Has insertado el valor -$valor-<br />"; | ||
+ | } | ||
+ | |||
+ | //Otra manera más sencillo de escribir lo mismo | ||
+ | /* | ||
+ | if (isset($_POST['enviar'])) { | ||
+ | $valor = $_POST['valor']; | ||
+ | if ($valor=="") | ||
+ | $msj .= "Debes de aportar un valor válido<br />"; | ||
+ | else | ||
+ | $msj .= "Has insertado el valor -$valor-<br />"; | ||
+ | } | ||
+ | */ | ||
+ | |||
+ | |||
+ | ?> | ||
+ | <!doctype html> | ||
+ | <html lang="en"> | ||
+ | <head> | ||
+ | <meta charset="UTF-8"> | ||
+ | <meta name="viewport" | ||
+ | content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0"> | ||
+ | <meta http-equiv="X-UA-Compatible" content="ie=edge"> | ||
+ | <title>Document</title> | ||
+ | </head> | ||
+ | <body> | ||
+ | <?php echo $msj ?> | ||
+ | <fieldset> | ||
+ | <form action="form1.php" method="POST"> | ||
+ | <legend>Inserta Datos</legend> | ||
+ | <input type="text" name="valor" id=""> | ||
+ | <input type="submit" name="enviar" value="Enviar"> | ||
+ | </form> | ||
+ | </fieldset> | ||
+ | </body> | ||
+ | </html> | ||
+ | |||
+ | </source> | ||
+ | }} | ||
+ | }} | ||
+ | |||
+ | *Podemos revisar el siguiente código como corlario | ||
+ | <source lang=php> | ||
+ | |||
<?php | <?php | ||
echo "<h3>Probamos la función is_null</h3>"; | echo "<h3>Probamos la función is_null</h3>"; | ||
Línea 340: | Línea 454: | ||
[[Archivo:salida_valores_nulos_php.png]]<br /> | [[Archivo:salida_valores_nulos_php.png]]<br /> | ||
− | |||
{{MRM_Puntos clave|Title= isset($variable) emtpy($variable) is_null($variable)| | {{MRM_Puntos clave|Title= isset($variable) emtpy($variable) is_null($variable)| | ||
<source lang=php> | <source lang=php> | ||
Línea 364: | Línea 477: | ||
'''se consideran valores vacíos en esta función'''.}} | '''se consideran valores vacíos en esta función'''.}} | ||
}} | }} | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
</div> | </div> | ||
<!--3 --> | <!--3 --> | ||
<div class="slide"> | <div class="slide"> | ||
− | |||
*A continuación vamos a realizar una serie de prácticas con formularios | *A continuación vamos a realizar una serie de prácticas con formularios | ||
{{MRM_Actividad| | {{MRM_Actividad| |
Revisión de 03:01 8 feb 2019
- Por defecto los valores son pasados por GET
- Este método es fácil de ver pues se viauliza en el URL, apareciendo como parte de él separado por el signo interrogación con parejas variable=valor.
Ejemplo
| |
Tip: El name es al servidor lo mismo que el id es al cliente, con id podéis acceder a los valores de los elementos con javascript, con el name lo haremos en php
<form action="mifichero.php" method="GET"> Nombre <input type=text name = 'nombre' value='maría'> Apellido <input type=text name = 'apellido' value='Ruiz'> <br /> <input type=submit value=enviar> </form>
Dos cajas de texto y el botón submit
|
Tip: No se recomienda por temas de seguridad leer de la superglobal $_REQUEST
Nota: Las variables en $_REQUEST se proporcionan al script a través de los mecanismos de entrada GET, POST, y COOKIE y por lo tanto pueden ser manipulados por el usuario remoto y no debe confiar en el contenido...)