Foros del Web » Programando para Internet » PHP »

Es posible validar campos vacíos con PHP?

Estas en el tema de Es posible validar campos vacíos con PHP? en el foro de PHP en Foros del Web. Hola. Soy mas bien nueva en PHP pero estoy creando un formulario. Tengo miles de preguntas, espero me puedan ayudar. Primero que todo, para validar ...
  #1 (permalink)  
Antiguo 16/04/2003, 14:57
 
Fecha de Ingreso: abril-2003
Mensajes: 150
Antigüedad: 21 años
Puntos: 1
Es posible validar campos vacíos con PHP?

Hola.

Soy mas bien nueva en PHP pero estoy creando un formulario.
Tengo miles de preguntas, espero me puedan ayudar.

Primero que todo, para validar en un formulario que los campos no estén vacíos debo hacerlo con JAVASCRIPT?.

No es posible realizarlo con PHP? (Si lo es cómo puedo hacerlo?)

Gracias.
Espero sus consejos.

Liz
  #2 (permalink)  
Antiguo 16/04/2003, 15:09
Avatar de lado2mx
Colaborador
 
Fecha de Ingreso: agosto-2001
Ubicación: Veracruz
Mensajes: 3.720
Antigüedad: 22 años, 8 meses
Puntos: 9
es sencillo

suponte que tienes un campo llamado nombre, cuando lo pasas a mandarlo a una página php, puedes validarlo con un if:

Código PHP:
<? IF ($nombre==""
//el campo está vacio; 
echo "No incluyo el campo nombre"; } 
ELSE { 
//hay  campo;
echo "Tu nombre es $nombre"; }
?>
  #3 (permalink)  
Antiguo 16/04/2003, 15:17
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Tienes tambien funciones como:

isset() y empty() .. para ver si está definida tal variable o ver si está "vacia" (de valor NULL, 0 => "" )

Visita el manual de PHP: www.php.net/manual/es .. usa el buscador del mismo e informate sobre esas funciones y sobre todas las funciones de tratamiento de cadenas (strings) y tipos (is_xxxx() .. ) ahí veras que PHP como lenguaje del lado del servidor puede y debes SIEMPRE validar los datos que le envies .. Pese que si lo deseas lo hagas a su vez en javascript para ahorrarte una "ída/venida" de tu página en caso de error.

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #4 (permalink)  
Antiguo 16/04/2003, 15:34
 
Fecha de Ingreso: abril-2003
Mensajes: 150
Antigüedad: 21 años
Puntos: 1
Gracias a ambos!

Cluster... Voy a mirar la página que me dices y lo aplicaré a mi formulario.

Saludos
Liz
  #5 (permalink)  
Antiguo 16/04/2003, 15:55
 
Fecha de Ingreso: agosto-2002
Ubicación: Colón - Entre Rios - Argentina
Mensajes: 647
Antigüedad: 21 años, 8 meses
Puntos: 8
Cuando tomes variables de un formulario conviene usar las variables $_GET, o $_POST: lee esto http://www.forosdelweb.com/showthrea...989#post238989

Ademas de empty() tambien uso trim() para que elimine los espacion en blanco, pues si alguien rellena con un " " (espacio) el campo del formulario las formas anteriores fallarán.
Código PHP:
$_POST['nombre'] = trim($_POST['nombre']);
if (empty(
$var)) {
    echo 
"No se encontro";

http://www.php.net/trim
  #6 (permalink)  
Antiguo 16/04/2003, 21:43
 
Fecha de Ingreso: abril-2003
Mensajes: 150
Antigüedad: 21 años
Puntos: 1
para verificar si entendí bien...

Hola.

Primero que todo, mil gracias por la información, no saben lo que le ayudan a personas nuevas en el tema como yo.

Aunque ya he hecho lo que me recomendaron, aún tengo unas dudas. Bueno, mas que dudas,me gustaría si me dijeran si estoy en lo correcto o no.

-------
* Cluster: me dijiste lo siguiente: "...Pese que si lo deseas lo hagas a su vez en javascript para ahorrarte una "ída/venida" de tu página en caso de error."

Quieres decir que me recomiendas mejor hacer una validación con JavaScript directa en el formulario y evitar enviar los datos si no está lleno todo?.


-------

y para verificar si está o no vacía (en formu2.php):



{ echo "Internet Explorer version $CBExplorer";
if (isset($C2))
echo "<br>Netscape version $CBNetscape";
}
else {
if (isset($C2)) //chequea que la variable existe
echo "Netscape version $CBNetscape";
}

Lo hice bien?

------

* Tengo un formulario llamado formu1.php, el cual contiene varios campos.
El contenido de es campos es enviado a formu2.php.

Envío los datos por el método POST (desde formu1.php). Y muestro la información (en formu2.php) que se envió así

<?php echo $HTTP_POST_VARS["Nombres"] ?>

* fran86: me recomendaste hacer algo como $HTTP_POST_VARS, si bien entendí es para recopilar los valores en vez de la forma típica:

echo "$nombre <br>\n";

Si es para eso?

Gracias por el consejo de usar trim() y empty() lo tendré en cuenta.


Bueno, como les comenté es para saber si lo estoy haciendo de la manera correcta, porque ustedes siempre tienen mejores consejos de cómo hacerlos mejor y simplificar las cosas.

Gracias, y cualquier consejo me es de muchísima ayuda.
Saludos!
Liz
  #7 (permalink)  
Antiguo 17/04/2003, 01:02
Avatar de e-miliox  
Fecha de Ingreso: noviembre-2002
Ubicación: San Antonio - Chile
Mensajes: 223
Antigüedad: 21 años, 5 meses
Puntos: 7
hola voy a comentarte cada una de las opiniones
Cita:
* Cluster: me dijiste lo siguiente: "...Pese que si lo deseas lo hagas a su vez en javascript para ahorrarte una "ída/ venida" de tu página en caso de error."

Quieres decir que me recomiendas mejor hacer una validación con JavaScript directa en el formulario y evitar enviar los datos si no está lleno todo?.
quizas no es que LO MEJOR sea hacer la validacion con javascript, pero este tipo de validacion puede beneficiar la interactividad del usuario con el sistema, y sera un buen complemento a la validacion que haras en el php que recibes el formulario. Por lo tanto, yo te puedo aconsejar que de todas maneras te coneviene hacer las dos cosas :)
...
...
En cuanto a tu codigo, lo encontre un poco desordenado, y faltan algunos {}'s para cerrar ciertas partes del codigo pues trate de entenderlo pero si los corchetes faltan es dificil que se pueda leer el codigo para saber que hace. 2 consejos: ordena tu codigo, una instruccion por linea e indenta (anidar con espacios cada bloque de codigo) y lo otro, asegurate que cada "{" tiene su correspondiente "}" asi no solo nos vamos a ubicar nosotros sino que tu php tambien :)
...
...
Cita:
me recomendaste hacer algo como $HTTP_POST_VARS, si bien entendí es para recopilar los valores en vez de la forma típica:
cuando tu envias un formulario lo haces bajo dos posibles metodos o GET o POST (determinado por la etiqueta "method" del <form> ) al recibir los datos te conviene ESPECIFICAR de donde vienen los datos, pues si los usas "directo" no sabras de donde estas tomando las variables y puedes tener un problema de integridad o consistencia (en otras palabras te pueden modificar lo que intentas recibir) lo que es un potencial problema. Entonces lo mejor es que, si vas a enviar un formulario por POST, en el otro lado lo recibas y digas que la variable viene por POST...un ejemplo:

----> en la pagina que envia....
<form method="post">
<input type="text" name="contrasenia" />
...
</form>

-----> en la pagina que recibe.....
<?php

$contrasenia = trim($_POST[contrasenia]);
...
if (empty($contrasenia)){
echo "la contrasena no esta presente, vuelva atras y pongala";
}else{
echo "la contrasenia si existe, ahora la procesaremos :)";
....
}
... blah blah...

bueno eso, ojala que te pueda ayudar en algo, y cualquier consulta no dude y pregunta noams :)

saludos
__________________
=PoWeReD By MySeLf!=
  #8 (permalink)  
Antiguo 17/04/2003, 11:11
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Cita:
-------
* Cluster: me dijiste lo siguiente: "...Pese que si lo deseas lo hagas a su vez en javascript para ahorrarte una "ída/venida" de tu página en caso de error."

Quieres decir que me recomiendas mejor hacer una validación con JavaScript directa en el formulario y evitar enviar los datos si no está lleno todo?.
-------
No, osease, SIEMPRE valida en el SERVIDOR .. y algun tipo de validación Javascript minimo en el CLIENTE .. para evitar lo que comentaba ..

Peo insisto .. EL que manda siempre es la validación del SERVIDOR (de PHP en estos casos) .. Las validaciones Javascript son facilmente "franqueables" ..

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #9 (permalink)  
Antiguo 17/04/2003, 16:56
 
Fecha de Ingreso: abril-2003
Mensajes: 150
Antigüedad: 21 años
Puntos: 1
Ok Cluster,
ya entendí, mil gracias por tus consejos! me han sido de gran utilidad!

Liz
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.
Tema Cerrado




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