Foros del Web » Programando para Internet » PHP »

el volver me limpia todo lo que escribi, como hago!!!!

Estas en el tema de el volver me limpia todo lo que escribi, como hago!!!! en el foro de PHP en Foros del Web. hola que tal, les cuento, tengo una pagina php con muchos datos, y cuando le doy ok, y valido muchas cosas, como que los nombres ...
  #1 (permalink)  
Antiguo 22/08/2005, 07:49
 
Fecha de Ingreso: septiembre-2004
Mensajes: 92
Antigüedad: 13 años, 2 meses
Puntos: 0
el volver me limpia todo lo que escribi, como hago!!!!

hola que tal, les cuento, tengo una pagina php con muchos datos, y cuando le doy ok, y valido muchas cosas, como que los nombres no se repitan u otras cosas, y pongo en una nueva pagina que existes "x" errores, y les doy la opcion de volver me limpia todo lo que escribi
Como hago para que los datos no se pierdan al poner "atras" o "volver"
Muchas gracias!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  #2 (permalink)  
Antiguo 22/08/2005, 08:34
 
Fecha de Ingreso: agosto-2005
Mensajes: 143
Antigüedad: 12 años, 3 meses
Puntos: 0
Al pulsar el boton para comprobar si hay errores podrias almazenar el contenido de esos, supongo, textboxs o textareas en una variable de session. También tendrias que poner en el value de estos objetos que, si existe la variable de session, muestre su contenido.

Si no me he explicado bien dímelo y te pongo un ejemplo.
  #3 (permalink)  
Antiguo 22/08/2005, 08:40
 
Fecha de Ingreso: mayo-2004
Ubicación: Managua, Nicaragua
Mensajes: 281
Antigüedad: 13 años, 7 meses
Puntos: 0
Lo podes hacer sobre la misma página, no entiendo eso de nueva página, si vas agregar datos en caso de que todo esté bien o se hayan llenado corretamente el formulario, sería bueno que lo hagas en una página de procesos. En tu formulario de datos, con un prefijo podes ponerle un nombre especial a los campos requeridos en caso de que todos no lo sean, en la página de procesos, con un foreach, recorré todos los valores donde los campos requeridos que ya los conoces por el prefijo puesto y no cumplan con la regla, guardá en una variable de arreglo todos los nombres de los campos requeridos que no cumplieron la regla y también en otra variable de arreglo los datos enviados por el arreglo $_POST, serializado en cada variable de sesión y redireccionas a tu formulario de datos, allí, lo deserializas la variable de sesión y se lo asignas de nuevo a una variable de arreglo, y haces la condición si in_array($array, "nombredecampo") poné un gif o lo que sea al campo requerido, con tu otra variable de arreglo recuperá los datos a cada objeto del formulario.
__________________
Julio Hernández
  #4 (permalink)  
Antiguo 22/08/2005, 08:49
Avatar de MarioNunes  
Fecha de Ingreso: agosto-2005
Mensajes: 280
Antigüedad: 12 años, 4 meses
Puntos: 1
Buenas,

Intentaré hacer una suposición para intentar explicarme.

si el fichero que tiene el formulario donde se envia la información es index.php y es el mismo fichero que procesa la información administrando los errores los campos del formulario podrían ser así :)

<input type="text" name="nombre" value="<? if((isset($HTTP_POST_VARS['nombre'])) && ($array_errores['nombre']==false)) { echo $HTTP_POST_VARS['nombre']; }?>">

A ver si esto te puede ser de ayuda.

Un saludo.
__________________
www.pensandoenred.com
  #5 (permalink)  
Antiguo 22/08/2005, 08:51
 
Fecha de Ingreso: marzo-2002
Ubicación: Salta Capital - Actualmente estudiando en Córdoba
Mensajes: 430
Antigüedad: 15 años, 8 meses
Puntos: 0
La verdad que nunca use eso sobre las sessiones, yo simplemente hacia esto con cookies para que el ususario no volviera a escribir todo de nuevo.
Alguien puede poner algun ejemplo? jchernandez puedes poner un ejemplo de lo que explicas? con la serializacion y deserializacion?
Te lo agradeceria ya que estoy trabajando en algo similar y me gustaria implementarlo con sessiones.
Gracias y salu2.
__________________
Nada es imposible, con un poco de esfuerzo se logran las cosas.-
  #6 (permalink)  
Antiguo 22/08/2005, 08:53
 
Fecha de Ingreso: julio-2005
Mensajes: 18
Antigüedad: 12 años, 5 meses
Puntos: 0
Yo pondría el valor de la variable cuyo nombre es el elemento del formulario. Algo así:

<input type="text" name="datos" value="<?=$datos;?>">
__________________
http://www.flipa.net (Clasificados) · http://www.flipa.net/enlaces(intercambio publicidad) ·
http://www.flipa.net/guiaweb (directorio) · http://www.flipa.net/videos (videos divertidos)· http://www.flipa.net/buscador (buscador independiente)
  #7 (permalink)  
Antiguo 22/08/2005, 09:13
 
Fecha de Ingreso: mayo-2004
Ubicación: Managua, Nicaragua
Mensajes: 281
Antigüedad: 13 años, 7 meses
Puntos: 0
Yo también hace rato lo había implementado con lo de las Cookies, el problema que tenes ahí es que cuando se vence la Cookie, los datos de tu formulario desaparecen.

algo similar o alguna idea es en procesos:

session_start();
foreach($_POST as $nombre => $valor){
if(substr($nombre, 0, 2) = "cr" && empty($_POST[$nombre]))
$array[] = $nombre #Se guardan los campos requeridos con errores
}
if(isset($array)){
$_SESSION['datos'] = serialize($_POST);
$_SESSION['error'] = serialize($array);
}
header("location:formualriodedatos.php");

Después en tu fomulario de datos sin necesidad de recorrer el arreglo con un for, utilizas in_array, para buscar tu campo requerido si está ahí, de ser así, lo marcas a tu gusto, destruis después el arreglo y al mimo tiempo la variables de sesión para evitar consumo de memoria.

Para mí no es conveniente hacerlo en la misma página porque sino en caso de que todo esté bien y se hace Refresh a esa página podrían tener datos duplicados, es mejor evitarlos.
__________________
Julio Hernández
  #8 (permalink)  
Antiguo 22/08/2005, 09:26
 
Fecha de Ingreso: marzo-2002
Ubicación: Salta Capital - Actualmente estudiando en Córdoba
Mensajes: 430
Antigüedad: 15 años, 8 meses
Puntos: 0
Ha mira vos que interesante, lo voy a probar, de todas formas todavia no tengo muy claro el uso del foreach, pero voy a buscarlo, si llegase a tener dudas nuevamente, abrire un post con la consulta, me clave en el foreach asi que muy mucho no puedo entender el codigo completo, pero de todas formas gracias, ya lo probare y aviso.
Salu2.-
__________________
Nada es imposible, con un poco de esfuerzo se logran las cosas.-
  #9 (permalink)  
Antiguo 22/08/2005, 09:29
 
Fecha de Ingreso: mayo-2004
Ubicación: Managua, Nicaragua
Mensajes: 281
Antigüedad: 13 años, 7 meses
Puntos: 0
Ánimate, esta sencillo xD.
__________________
Julio Hernández
  #10 (permalink)  
Antiguo 22/08/2005, 09:42
 
Fecha de Ingreso: agosto-2005
Mensajes: 143
Antigüedad: 12 años, 3 meses
Puntos: 0
foreach facilita mucho el trabajo a la hora de recorrer una matriz.

Te pongo un ejemplo comparando con un bucle for() por ejemplo:
Código PHP:
<?php
//tenemos un array
$array = array("pedro""jose""luis");

//lo mostramos todo con for();
for($a 0$a count($array); $a++)
    echo 
$array[$a].'<br>';

echo 
'<hr>';

//hacemos lo mismo con foreach();
foreach($array as $nombre)
    echo 
$nombre.'<br>';

/* ###############################3 */
//otro ejemplo con foreach();
$array2 = array("pedro" => "alto""jose" => "bajo""luis" => "feo");
foreach(
$array2 as $nombre => $adjetivo)
    echo 
$nombre.' es '.$adjetivo.'<br>';
?>
  #11 (permalink)  
Antiguo 22/08/2005, 09:47
 
Fecha de Ingreso: marzo-2002
Ubicación: Salta Capital - Actualmente estudiando en Córdoba
Mensajes: 430
Antigüedad: 15 años, 8 meses
Puntos: 0
Cita:
Iniciado por $thisone
foreach facilita mucho el trabajo a la hora de recorrer una matriz.

Te pongo un ejemplo comparando con un bucle for() por ejemplo:
Jejeje la verdad que mas sencillo imposible, tenia un problemin con interpretar el "as" y el => pero me quedo clarisimo con eso.
Muchas gracias por el aporte.
salu2.-
__________________
Nada es imposible, con un poco de esfuerzo se logran las cosas.-
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 06:07.