Foros del Web » Programando para Internet » PHP »

validar antes de irse a otro formulario

Estas en el tema de validar antes de irse a otro formulario en el foro de PHP en Foros del Web. hola, xD haber tengo un form que cuando hago click se va a otro formulario <FORM ACTION="procesa2.phtml" METHOD="POST"> Introduzca su nombre:<INPUT TYPE="text" NAME="nombre"><BR> Introduzca sus ...
  #1 (permalink)  
Antiguo 13/07/2006, 12:22
Avatar de FNX_NET  
Fecha de Ingreso: marzo-2004
Ubicación: EN EL INFIERNO.....
Mensajes: 1.707
Antigüedad: 20 años, 1 mes
Puntos: 7
validar antes de irse a otro formulario

hola, xD

haber tengo un form que cuando hago click se va a otro formulario

<FORM ACTION="procesa2.phtml" METHOD="POST">
Introduzca su nombre:<INPUT TYPE="text" NAME="nombre"><BR>
Introduzca sus apellidos:<INPUT TYPE="text" NAME="apellidos"><BR>
<INPUT TYPE="submit" VALUE="Enviar">

yap

pero antes de irme al otro form quiero validar que los text no esten vasios, para no hacer una consulta en vano a la base de datos, como seria
__________________
:-D "Que se libere del cielo confinado; que mi cuerpo sea la espada de hielo negro que nos lleve al abismo; que ningún poder pueda detenernos...Destructora de las almas de los dioses!!!":adios:


:pirata:
  #2 (permalink)  
Antiguo 13/07/2006, 12:25
Avatar de djreficul  
Fecha de Ingreso: julio-2006
Ubicación: Cork
Mensajes: 672
Antigüedad: 17 años, 9 meses
Puntos: 0
Pues en el procesa2.phtml mira si te llegan las variables y q no están vacías.
Por ejemplo:

Código PHP:
//Antes de cualquier salida de HTML
if (isset ($_POST['nombre']) && trim ($_POST['nombre'])!="") {
    
//Para abreviar solo he puesto una variable pero tu pon las 2, Si entra aqui es que han llegado rellenas
} else {
   
//No han llegado rellenas así que puedes enviarlos de vuelta con un header y algun parámetro para que muestre el error pertienente

Saludos.
__________________
La muerte es un camino que todos debemos recorrer...
  #3 (permalink)  
Antiguo 13/07/2006, 12:26
 
Fecha de Ingreso: septiembre-2002
Mensajes: 122
Antigüedad: 21 años, 7 meses
Puntos: 0
las validaciones se hacen con Javascript..en las faqs del foro de javascript hay informacion al respecto...
  #4 (permalink)  
Antiguo 13/07/2006, 12:28
Avatar de djreficul  
Fecha de Ingreso: julio-2006
Ubicación: Cork
Mensajes: 672
Antigüedad: 17 años, 9 meses
Puntos: 0
Las validaciones en javascript son facilmente manipulables. Siempre hay q terminar validando en el servidor por si acaso.
__________________
La muerte es un camino que todos debemos recorrer...
  #5 (permalink)  
Antiguo 13/07/2006, 12:34
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Cita:
Iniciado por Reyis
las validaciones se hacen con Javascript..en las faqs del foro de javascript hay informacion al respecto...
Quee?!!!!!

Las validaciones de un "formulario" se pueden hacer por javascript por un tema de dar "usabilidad" a tus formularios, pero por "seguridad" -siempre- se ha de validar en el lado del servidor: PHP en este caso.

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #6 (permalink)  
Antiguo 13/07/2006, 12:39
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Cita:
Iniciado por FNX_NET
hola, xD

haber tengo un form que cuando hago click se va a otro formulario

<FORM ACTION="procesa2.phtml" METHOD="POST">
Introduzca su nombre:<INPUT TYPE="text" NAME="nombre"><BR>
Introduzca sus apellidos:<INPUT TYPE="text" NAME="apellidos"><BR>
<INPUT TYPE="submit" VALUE="Enviar">

yap

pero antes de irme al otro form quiero validar que los text no esten vasios, para no hacer una consulta en vano a la base de datos, como seria
Puedes pre-validar en javascript como te han comentado, antes de continuar el proceso del "submit" del formulario, pero igualemnte en tu script PHP de proceso2.php tendras que validar la existencia de esas variables por -seguridad-

Código PHP:
if (empty($_POST['variable']){
   die (
"Validación de seguridad .. falta tal dato, me quisistes tomar el pelo ingresando el dato directo o con un navegador con javascript desactivado");

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #7 (permalink)  
Antiguo 13/07/2006, 12:53
Avatar de FNX_NET  
Fecha de Ingreso: marzo-2004
Ubicación: EN EL INFIERNO.....
Mensajes: 1.707
Antigüedad: 20 años, 1 mes
Puntos: 7
Pregunta

osea, en le otro formulario lo hago, pero no entendi lo edl antes del submit, como digo le digo que lo haga antes de irse al otro lado, para mi es un poco confuso, ya que programaba software para escritorio, y esto de las web , igual parece mas raro
__________________
:-D "Que se libere del cielo confinado; que mi cuerpo sea la espada de hielo negro que nos lleve al abismo; que ningún poder pueda detenernos...Destructora de las almas de los dioses!!!":adios:


:pirata:
  #8 (permalink)  
Antiguo 13/07/2006, 13:08
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Cita:
Iniciado por FNX_NET
osea, en le otro formulario lo hago, pero no entendi lo edl antes del submit, como digo le digo que lo haga antes de irse al otro lado, para mi es un poco confuso, ya que programaba software para escritorio, y esto de las web , igual parece mas raro
Bueno .. es que así se basa este entorno de desarrollo, .. no es que sea "raro" .. es así esta arquitectura. Es cosa de "entenderla"

Si te fijas .. aquí tienes -dos- partes:
Una "servidor". Aquí está PHP ejecutandose .. tus conexiones a tus BBDD. etc.
Una "cliente". Aquí tu HTML, tu javascript .. etc

El proceso normal que usas es:

Entre cliente->servidor ...
"Pides" por el URL un script o página a tu servidor HTTP por médio de tu navegedador, .. el servidor HTTP le pasa el proceso al interprete PHP (en este caso), PHP realiza tu proceso y genear una "salida" .. por ejemplo "HTML" con Javascript, con CSS .. etc. Esta "salida" la entrega al cliente el servidor HTTP y es tu navegador el que interpreta su parte. En esa "parte del lado del cliente" está por ejemplo ejecutandose "javascript" ..

Cuando usas un formulario .. tu lo controlas lo que sucede mientras el usuario ingresa datos en el "cliente" .. está bajo la supervisión de javascript si lo quieres usar o hacer algó -antes- de dar a tu botón "enviar" del mismo o por otro médio lo hagas llegar a tu script PHP de proceso (que indicas en el "action" del mismo).

Por eso, es javascript donde deberias resolver tu problema si quieres algún tipo de validación -del lado del cliente- y "antes" de que se envien tus datos al servidor. Javacript ya tiene técnicas para saber que pulsastes o estás enviando un formulario (y cual) como para "Capturar" ese envento (onSubmit) y de ahí hacer algún proceso y si corresponde -cortar- el envio de datos o dejarlos pasar ...

Si no conoces "javascript" .. otro lenguaje más a aprender si vas a desarrollar en este entorno .. cuanto más sepas de Javascript, HTML y PHP mejor te irá para resolver tus problemas .. Luego te podrás meter en otras combinaciones de todo esto como DHTML, Ajax .. etc ...

(lo ves más claro ahora?).

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 13/07/2006, 13:27
Avatar de FNX_NET  
Fecha de Ingreso: marzo-2004
Ubicación: EN EL INFIERNO.....
Mensajes: 1.707
Antigüedad: 20 años, 1 mes
Puntos: 7
osea, ya habia leido manuales qu explican esto, y que siempre es bueno validar del lado del server, ahora del punto de javascripts, ese lenjuage si lo conosco mas, pero ahora el cuesions php, aunque como estoyaprendiendo a ocupar esto lo encuentre reentrete y no es tan dificil, aunque la dependencia de otros lenjuages, me hace que me incomode un poco, ahora.

ya lo hize por javascripts, pero le me gustaria saber como ahcer por php, ama arriba ya m dieron la forma, pero ahora no se donde integrarla en el codigo
__________________
:-D "Que se libere del cielo confinado; que mi cuerpo sea la espada de hielo negro que nos lleve al abismo; que ningún poder pueda detenernos...Destructora de las almas de los dioses!!!":adios:


:pirata:
  #10 (permalink)  
Antiguo 13/07/2006, 13:34
Avatar de FNX_NET  
Fecha de Ingreso: marzo-2004
Ubicación: EN EL INFIERNO.....
Mensajes: 1.707
Antigüedad: 20 años, 1 mes
Puntos: 7
despues de tanto esfuerzo lo hize , por si algun pollo lo necesita aca esta, y si algun gur tiene alguna observacion de mi codigo, mucho se le agradeceria

Código PHP:
<script language="JavaScript" type="text/JavaScript">
<!--
function 
Enviar(form)
{
    if (
form.USUARIO.value == "")
    {  
        
alert("Debe ingresar el USUARO"); form.USUARIO.focus();return;
    }
        if (
form.CONTRASENA.value == "")
    {  
        
alert("Debe ingresar el CONTRASEÑA"); form.USUARIO.focus();return;
    }
        
form.submit();
}
//-->
</script>
   <title>Ejemplo de PHP</title>
</head>
<body>
<H1>Ejemplo de procesado de formularios</H1>
<FORM METHOD="POST" ACTION="procesa3.php">
Introduzca su nombre:<INPUT TYPE="text" NAME="USUARIO"><BR>
Introduzca sus apellidos:<INPUT TYPE="text" NAME="CONTRASENA"><BR>
<INPUT TYPE="button" VALUE="Enviar" onClick="return Enviar(this.form)">
</FORM>

</body> 
__________________
:-D "Que se libere del cielo confinado; que mi cuerpo sea la espada de hielo negro que nos lleve al abismo; que ningún poder pueda detenernos...Destructora de las almas de los dioses!!!":adios:


:pirata:

Última edición por Cluster; 13/07/2006 a las 14:37
  #11 (permalink)  
Antiguo 13/07/2006, 14:37
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Cita:
Iniciado por FNX_NET
despues de tanto esfuerzo lo hize , por si algun pollo lo necesita aca esta, y si algun gur tiene alguna observacion de mi codigo, mucho se le agradeceria

<script language="JavaScript" type="text/JavaScript">
<!--
function Enviar(form)
{
if (form.USUARIO.value == "")
{
alert("Debe ingresar el USUARO"); form.USUARIO.focus();return;
}
if (form.CONTRASENA.value == "")
{
alert("Debe ingresar el CONTRASEÑA"); form.USUARIO.focus();return;
}
form.submit();
}
//-->
</script>
<title>Ejemplo de PHP</title>
</head>
<body>
<H1>Ejemplo de procesado de formularios</H1>
<FORM METHOD="POST" ACTION="procesa3.php">
Introduzca su nombre:<INPUT TYPE="text" NAME="USUARIO"><BR>
Introduzca sus apellidos:<INPUT TYPE="text" NAME="CONTRASENA"><BR>
<INPUT TYPE="button" VALUE="Enviar" onClick="return Enviar(this.form)">
</FORM>

</body>
Como veras usastes integramente javascript .. Sólo es para que veas las difertencias "cliente-servidor" que te expuse antes para que veas por donde hay que ver para solucionar un tema concreto que tengas.

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #12 (permalink)  
Antiguo 13/07/2006, 15:06
Avatar de FNX_NET  
Fecha de Ingreso: marzo-2004
Ubicación: EN EL INFIERNO.....
Mensajes: 1.707
Antigüedad: 20 años, 1 mes
Puntos: 7
si po lo entendi, ojala que el codigo que mande le sirva a alguien o que alguien me diga si tiene un error logico
__________________
:-D "Que se libere del cielo confinado; que mi cuerpo sea la espada de hielo negro que nos lleve al abismo; que ningún poder pueda detenernos...Destructora de las almas de los dioses!!!":adios:


:pirata:
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 14:32.