Foros del Web » Programando para Internet » PHP »

como validar con php

Estas en el tema de como validar con php en el foro de PHP en Foros del Web. buenas tardes la verdad es que soy nuevo en esto de php y debo realizar un ejemplo de una aerolinea donde se ingresen los datos ...
  #1 (permalink)  
Antiguo 30/03/2013, 12:29
 
Fecha de Ingreso: marzo-2013
Mensajes: 1
Antigüedad: 11 años, 7 meses
Puntos: 0
como validar con php

buenas tardes la verdad es que soy nuevo en esto de php y debo realizar un ejemplo de una aerolinea donde se ingresen los datos por html y se valide todo por php donde me indique el error de campo en blanco si lo hay pero solo me funciona si lo redirecciono a la misma pagina quisiera una solucion
porque necesito redireccionarlo a otra pagina donde lo que tiene que salir como resultado

aqui codigo

<html>
<head>

</head>


<body>
<?php
error_reporting(E_ALL ^ E_NOTICE ^ E_WARNING);

if($_POST){
$nombre=$_POST["nombres"];


$msdad="";
$msnom="";
$claseNombre = "";
$claseEdad = "";

if ($nombre==""){
$msnom="falta Ingresar el nombre";
$claseNombre = "error";
}
}
?>
<style>

div label{
float: left;
width: 25%;
}

input{
border: solid 2px black;
}

.error{

border: solid 4px red;
background: orange;
}
.msg{

color: black;
}
</style>





<form name="avion" method="POST" action="http://localhost/tvictor/aerolinea.php" >
<table>

<tr>
<td>fecha de compra del tiquete</td>
<td><input type="date" name="com"></td>
</tr>
<tr>
<td><div class="<?php echo $claseNombre; ?>">
nombres</td>
<td><input type="text" name="nombres" value="<?php echo $nom; ?>" >
<span class="msg"><?php echo $msnom; ?></span>
</div>
</td>
</tr>

<tr>
<td>
apellidos
</td>
<td><input type="text" name="apellidos"/></td>
</tr>
<tr>
<td>
edad
</td>
<td><input type="text" name="edad"/></td>
</tr>
<tr>
<td>
fecha de viaje
</td>
<td><input type="date" name="fechaviaje"/></td>
</tr>

<tr><td>
ciudad de origen
</td>
<td>
<select name="ciudador">
<option selected value"seleccione su ciudad de origen">seleccione su ciudad de origen</option>
<option value="bogota">bogota</option>
<option value="cali">cali</option>
<option value="pasto">pasto</option>
<option value="leticia">leticia</option>
<option value="medellin">medellin</option>
<option value="pereira">pereira</option>
<option value="sincelejo">sincelejo</option>
<option value="monteria">monteria</option>
<option value="cartagena">cartagena</option>
<option value="barranquilla">barranquilla</option>
<option value="santa marta">santa marta</option>
<option value="riohacha">riohacha</option>
</select>
</td>
</tr>

<tr><td>
ciudad de destino
</td>
<td>
<select name="ciudaddes" >
<option selected value"seleccione su ciudad de destino">seleccione su ciudad de destino</option>
<option value="bogota">bogota</option>
<option value="cali">cali</option>
<option value="pasto">pasto</option>
<option value="leticia">leticia</option>
<option value="medellin">medellin</option>
<option value="pereira">pereira</option>
<option value="sincelejo">sincelejo</option>
<option value="monteria">monteria</option>
<option value="cartagena">cartagena</option>
<option value="barranquilla">barranquilla</option>
<option value="santa marta">santa marta</option>
<option value="riohacha">riohacha</option>
</select>
</td>
</tr>




<tr>
<td>
hora de salida de vuelo
</td>
<td><input type="time" name="horasalvuelo"/></td>
</tr>

<tr>
<td>
hora de llegada del vuelo
</td>
<td><input type="time" name="horallvuelo"/></td>
</tr>

<tr>
<td>
peso en kilos del equipaje
</td>
<td><input type="text" name="pequipaje"></td>
</tr>
<tr>
<td>

<input type="submit" value="Enviar" />

</td>
</tr>
</table>
</form>
</body>
</html>
  #2 (permalink)  
Antiguo 31/03/2013, 06:03
 
Fecha de Ingreso: abril-2012
Ubicación: 41°37′00″N, 00°37′00″E
Mensajes: 462
Antigüedad: 12 años, 7 meses
Puntos: 33
Respuesta: como validar con php

Buenas,

A ver si te puedo echar una mano.

Primero tendrías que poner el "action" del form a la página de destino (por ejemplo, comprobar.php).

Entonces, si quieres comprobar los campos vacíos, puedes hacer algo así sencillo:

Código PHP:
Ver original
  1. comprobar.php
  2.  
  3. $pasa = true; //variable auxiliar para comprobación rápida
  4. $resultado = array();//aquí guardaremos los resultados de los campos: 0 si está vacío, 1 si no lo está
  5.  
  6. /*
  7. La variable $_POST es un array compuesta por parejas clave/valor.
  8.  
  9. Si iteramos con un foreach, podemos obtener cada pareja clave/valor en variables diferentes
  10. */
  11. foreach($_POST as $clave => $valor){
  12.   if(isset($_POST['clave'])){ //si el valor actual de $_POST tiene valor, asignamos 1
  13.     $resultado['clave'] = 1;
  14.   }else{ //sino, asignamos 0 y ponemos $para a false
  15.     $pasa = false;
  16.     $resultado['clave'] = 0;
  17.   }
  18. }
  19.  
  20. //al salir del bucle, $resultado tendrá parejas clave/valor iguales que $_POST, pero con 0 y 1 simplemente.
  21.  
  22. if(!$pasa){//hay algún campo vacío
  23. /*
  24. aquí puedes combinar $_POST y $resultado para saber qué campo está vacío, sabiendo que si $resultado[$clave] == 0 => $_POST[$clave] está vacío.
  25. */
  26. }

Espero te sirva.

Saludos
  #3 (permalink)  
Antiguo 31/03/2013, 06:15
Avatar de cuasatar  
Fecha de Ingreso: junio-2011
Ubicación: Bogotá Rock City
Mensajes: 1.230
Antigüedad: 13 años, 4 meses
Puntos: 181
Respuesta: como validar con php

Complementando la respuesta de DoHITB también deberias asegurarte que el usuario no escoja la misma ciudad de salida y destino. Para ponerle un poco de nivel podrias hacerlo con ajax, pero digamos que para efectos pedagógicos con una simple comprobación que ambos campos no sean igual deberia ser mas que suficiente.
__________________
Blog de humor http://elcuasatar.net63.net/
  #4 (permalink)  
Antiguo 31/03/2013, 10:58
 
Fecha de Ingreso: abril-2012
Ubicación: 41°37′00″N, 00°37′00″E
Mensajes: 462
Antigüedad: 12 años, 7 meses
Puntos: 33
Respuesta: como validar con php

Cita:
Iniciado por cuasatar Ver Mensaje
Complementando la respuesta de DoHITB también deberias asegurarte que el usuario no escoja la misma ciudad de salida y destino. Para ponerle un poco de nivel podrias hacerlo con ajax, pero digamos que para efectos pedagógicos con una simple comprobación que ambos campos no sean igual deberia ser mas que suficiente.
Hombre, claro. También puede comprobar la fecha de entrada y salida (el formato); pero ya que solo ha pedido comprobar que los campos estén llenos he supuesto que es un ejercicio de clase o algo así...

Si fuera una web de viajes como bien dices debería comprobar eso, las fechas y varias cosas más jejeje.

Etiquetas: html, select
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:03.