This course will become read-only in the near future. Tell us at community.p2pu.org if that is a problem.

Valida la data (If... else)



Ya vimos como utilizar la data, pero debemos tener en mente que no siempre la data que se manda es correcta. El usuario de la página pudo cometer un error al momento de llenar los campos; por ejemplo, dejar su nombre en blanco.

Para minimizar que data inválida sea utilizada o almacenada tenemos que validar la data. Lo primero que tenemos que validar es que ningún campo este en blanco. La manera más básica para hacer esto sería así:

Asumiendo que estamos validando que el nombre no este en blanco

<html>
<body>
  <?php
    $varNombre = "";

    if ($varNombre == "") {
      echo "El nombre no puede estar en blanco!";
    }
  ?>
</body>
</html>


En el ejemplo anterior utilizamos if para validar una condición. La condición del if va dentro de paréntesis ( ). Utilizamos == para comparar igualdad.

La línea: if ($varNombre == "") se puede leer como "Si $varNombre es igual a "" entonces...". El entonces sería lo que ponemos dentro de la llave { }. En nuestro caso, el entonces es desplegar un mensaje que indica que el nombre no puede estar en blanco.

Con esto ya podemos informarle al usuario si el nombre está vacío, pero qué tal si le queremos decir algo cuando llena el nombre? Para esto vamos a extender nuestro if utilizando else. Veamos un ejemplo:

<html>
<body>
  <?php
    $varNombre = "";

    if ($varNombre == "") {
      echo "El nombre no puede estar en blanco!";
    }
    else {
      echo "Hola $varNombre";
    }
  ?>
</body>
</html>


Else solo se ejecuta cuando la condición del if "no" se cumple. En nuestro ejemplo la condición era si $varNombre estaba vacía, si eso no se cumple (osea que no está vacía) entonces mostramos el mensaje "Hola $varNombre".

Para completar esta tarea:

  1. En tu archivo receptor.php valida que el nombre, email y mensaje no estén vacíos.
  2. Si algún campo está vacío manda un mensaje indicando que el campo no puede estar vacío.
  3. Si el campo si tiene un valor entonces envía un mensaje como:
    • Tu nombreCampo es $varCampo. Por ejemplo para el nombre sería: Tu nombre es John Snow.
  4. Utiliza un if... else por cada campo!
  5. Recuerda utilizar == para comparar igualdad.
  6. Recuerda que para saltos de línea puedes hacer echo "<br/>";
  7. Prueba tu formulario! Intenta diferentes combinaciones de campos vacíos y asegúrate de que receptor.php está validando todo correctamente.
    • A las finales debes de obtener un código similar a este.
    • Tu formulario ahora se debe comportar así


Te recomendamos:

Task Discussion