18. CONDICIONAL SWITCH

 

Otro tipo de condicional es switch-case cuya sintaxis es la siguiente:

switch (condición a evaluar) {

Case valor 1:

Código

Break;

Case valor 1:

Código

Break;

Case valor 1:

Código

Break;

Default:

}

switch (condición a evaluar):

Case valor 1:

Código

Break;

Case valor 1:

Código

Break;

Case valor 1:

Código

Break;

Default:

endswitch

 

Utilizamos el formulario anterior con el que hemos trabajo que nos solicita el nombre de usuario y la edad, el código del formulario, lo guardamos con otro nombre para diferenciarlo del condicional If:

<form action="validacionSwitch.php" method="post" name="datos_usuario" id="datos_usuario">

  <table width="15%" align="center">

    <tr>

      <td>Nombre:</td>

      <td><label for="nombre_usuario"></label>

      <input type="text" name="user" id="user"></td>

    </tr>

    <tr>

      <td>Edad:</td>

      <td><label for="edad_usuario"></label>

      <input type="text" name="edad" id="edad"></td>

    </tr>

    <tr>

      <td>&nbsp;</td>

      <td>&nbsp;</td>

    </tr>

    <tr>

      <td colspan="2" align="center"><input type="submit" name="enviando" id="enviando" value="Enviar"></td>

    </tr>

  </table>

</form>

El código PHP sería el siguiente que también lo guardamos con otro nombre, por ejemplo, validacionSwitch.php:

<?php

if(isset($_POST["enviando"])) {

      $user=$_POST["user"];

      $pass=$_POST["edad"];

switch($user){

      case "Paco":

      echo "Usuario autorizado<br>";

      break;

      case "Maria":

      echo "Usuario autorizado<br>";

      break;

      case "Juan":

      echo "Usuario autorizado<br>";

      break;

      default:

      echo “Usuario no autorizado”;

}

}

?>

Podemos indicar que en lugar de una condición sean dos condiciones, por ejemplo, el nombre y la contraseña. Hacemos cambios en el formulario:

<form action="validacionIf.php" method="post" name="datos_usuario" id="datos_usuario">

  <table width="15%" align="center">

    <tr>

      <td>Nombre:</td>

      <td><label for="nombre_usuario"></label>

      <input type="text" name="user" id="user"></td>

    </tr>

    <tr>

      <td>Contraseña:</td>

      <td><label for="pass_usuario"></label>

      <input type="text" name="pass" id="pass"></td>

    </tr>

    <tr>

      <td>&nbsp;</td>

      <td>&nbsp;</td>

    </tr>

    <tr>

      <td colspan="2" align="center"><input type="submit" name="enviando" id="enviando" value="Enviar"></td>

    </tr>

  </table>

</form>

En el código:

<?php

if(isset($_POST["enviando"])) {

      $user=$_POST["user"];

      $pass=$_POST["pass"];

switch(true){

      case $user=="Paco" && $pass="1234":

      echo "Usuario autorizado<br>";

      break;

      case $user=="Maria" && $pass="1234":

      echo "Usuario autorizado<br>";

      break;

      case $user=="Juan" && $pass="1234":

      echo "Usuario autorizado<br>";

      break;

      default:

      echo "Usuario no autorizado";

}

}

?>

Probamos, vamos a introducir el usuario Maria:



Pulsamos el botón Enviar:



Nos indica que el usuario está autorizado, si ponemos otro diferente:



Al pulsar el botón Enviar nos indica que el usuario no está autorizado:



17.OPERADOR TERNARIO << >> 19. WHILE Y DO WHILE



0 comentarios:

Publicar un comentario

Buscar este blog