Foros del Web » Programando para Internet » PHP »

variables!!!

Estas en el tema de variables!!! en el foro de PHP en Foros del Web. Hola.. hola... tengo tremendo lio!!!!! resulta que verifico unos campos, para esto llamo a otro script y muestro los mensajes de error en una ventana ...
  #1 (permalink)  
Antiguo 04/02/2004, 14:39
Avatar de Salome  
Fecha de Ingreso: noviembre-2002
Ubicación: Colombia
Mensajes: 1.032
Antigüedad: 22 años
Puntos: 1
variables!!!

Hola.. hola...

tengo tremendo lio!!!!!

resulta que verifico unos campos, para esto llamo a otro script y muestro los mensajes de error en una ventana html..

ahora, quiero que al dar click en la ventana donde paso los mensajes de error.. es decir al dar click en el boton "aceptar" regrese a la ventana donde ingrese los campos... ok.. hasta ahi muy bien.. pero deseo que me muestre lo que ingrese y obviamente los campos donde no ingrese información...

Todo esto sin necesidad de haber almacenado en la base de datos, pues solo lo puedo hacer si todos los campos contienen información.....

resumen: el lio viene cuando pretendo desde la ventanita de verificación en html pasar los datos de nuevo al form...

  #2 (permalink)  
Antiguo 04/02/2004, 15:06
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 10 meses
Puntos: 129
Guardate tu array $_POST y propagalo entre tus paginas .. si quiers por el URL .. pero es más simple y efectivo en una sesión ..

Debes propagar todas tus variables hacia tu ventana y esta en su link de "vovolver" propagarselas al script/pagina de tu formulario .. Por eso te recomiendo sesiones: guardas entero el $_POST

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #3 (permalink)  
Antiguo 04/02/2004, 15:10
Avatar de Salome  
Fecha de Ingreso: noviembre-2002
Ubicación: Colombia
Mensajes: 1.032
Antigüedad: 22 años
Puntos: 1
mmm cluster podrias darme un ejemplo más práctico. la verdad ando muy liada con esto y encima pelo con las sesiones...

otra solución es validar desde java script... pero apenas este sabado comienzo a estudiar java script.. porque hace mucha falta para esto!!!!

entonces algun problema si me das un ejemplillo...
  #4 (permalink)  
Antiguo 04/02/2004, 15:23
Avatar de ramzax200  
Fecha de Ingreso: noviembre-2003
Mensajes: 172
Antigüedad: 21 años
Puntos: 0
en la segunda pagina que lleva el link hacia la primera pagina, el link debe ser algo como esto:

tusitio.co/archivo.html?nombre=daniel&apellido=ramirez

despues del -->?<-- son las variables que estas manejando.

entonces en tu form debe de llevar:

<input type=text name=nombre value=<? $nombre ?> >

asi si la variable esta vacia pues no aparece nada pero si ya habia puesto algo pues aparece lo que habia puesto antes...

Última edición por ramzax200; 04/02/2004 a las 15:24
  #5 (permalink)  
Antiguo 04/02/2004, 15:35
Avatar de Salome  
Fecha de Ingreso: noviembre-2002
Ubicación: Colombia
Mensajes: 1.032
Antigüedad: 22 años
Puntos: 1
mmm pero entonces se verian las vbles... eso es pasandolas asi...

es mejor por sesiones no?
  #6 (permalink)  
Antiguo 04/02/2004, 15:38
Avatar de ramzax200  
Fecha de Ingreso: noviembre-2003
Mensajes: 172
Antigüedad: 21 años
Puntos: 0
pues depende de que sean tus datos, por que si es de registro y lleva contraseña es mejor por seciones, pero si es sin contraseñas y datos ocultos, da igual..
  #7 (permalink)  
Antiguo 04/02/2004, 15:43
Avatar de Salome  
Fecha de Ingreso: noviembre-2002
Ubicación: Colombia
Mensajes: 1.032
Antigüedad: 22 años
Puntos: 1
mmmmm sera que si da igual.. jajaja ok..

pero bueno y entonces si mi formulario es para ingresar.. y si le pongo value la variable que trae.. que.. pues si los datos estan bien y tiene el value se generaria un lio o no??...

Pues tendrian la variable vacia...
mmm mejor hago la prueba..
  #8 (permalink)  
Antiguo 04/02/2004, 15:46
Avatar de ramzax200  
Fecha de Ingreso: noviembre-2003
Mensajes: 172
Antigüedad: 21 años
Puntos: 0
pues en tu archivo 2 php puedes hacer que validen los datos no?, entonces el que este mal no se incluye en las variables que regresas por el http por lo tanto en la forma no apareciera mas que vacio, y obvio seria el que esta mal no?
  #9 (permalink)  
Antiguo 04/02/2004, 16:20
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 10 meses
Puntos: 129
Usando sesiones ..

procesa.php
Código PHP:
<?
// registro del array $_POST en una variable de sesión .. contendrá todas las variables de tu formulario ..
session_start();
$_SESSION['variables']=$_POST;

// Validas tus datos de $_POST o el método que corresponda .. y los procesas

// Si hay error .. redireccionas como gustes .. un link, o automático vía header() .. etc ...
?>
formulario.php
Código PHP:
<?
// se obtienen las variables de sesión si está definida (osease, si se devolvió al formulario).
session_start();
if (isset(
$_SESSION['variables'])){
    
$variables=$_SESSION['variables'];
} else {
    
$variables=array();
}
?>
<form action="porcesa.php" method="post">
<input type="text" name="nombre_variable" value="<? echo $variables['nombre_variable'?>">
etc formulario y botón submit ...
</form>
Si $variables['nombre_variable'] no tiene valor .. en el campo "input" no va a tener predefinido .. (sólo con determinada configuración de error_reporting te dirá algo tipo "indice no existe en array" .. se puede solventar con isset() a esa variable en concreto .. omití esa parte de validación .. pero es simple implementarla).

Al usar sesiones (y si se propaga el SID por cookies como así se asume en el ejemplo ya que no lo propagao yo a mano ..) daría igual que el salto entre el formulario.php y el proceso.php exista alguna página más por medio ... estilo "mensajes de error" u otras... tus variables viajan en la sessión (mejor dicho permanecen en la sesión) así que .. ni se ven ni van hacia el cliente (navegador) en nigún momento ..

Las sesiones hay que aprovecharlas .. no sólo són útiles para "ocultar" datos tipo "contraseñas" sino para operaciones cotidianas como la presentada.

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
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 12:58.