Otra consulta, cuando tengo un error de escritura en un campo y quiero retornar al formulario me aparece todo en blanco, quisiera que los datos no se borren y poder cambiar solo el que esta mal escrito...se puede?????.....

| |||
Formulario Hola, estoy empezando a programar en php, tengo un formulario el cual le estoy dando validaciones a los campos y los envio a una tabla en base de datos en mysql, no me sale... quisiera una ayuda por favor... Otra consulta, cuando tengo un error de escritura en un campo y quiero retornar al formulario me aparece todo en blanco, quisiera que los datos no se borren y poder cambiar solo el que esta mal escrito...se puede?????..... ![]() |
| |||
este es el codigo...helpppppp!!!!! if ($nombre == "") { echo "Por favor ingrese su nombre<br>"; } else if (!ereg('^[a-z0-9]+([\.]?[a-z0-9_-]+)*@'.'[a-z0-9]+([\.-]+[a-z0-9]+)*\.[a-z]{2,}$',$email)) { echo "Por favor ingrese su email correctamente<br>"; } else if ($link == "") { echo "Por favor ingrese un link http://www.link.com"; } else if (!$nombre=="" and !$email=="" and !$link=="") { $Query = 'INSERT INTO datos'. ' (nombre,email,link,comentario,viene_de)'. ' VALUES ('. '"'.$nombre.'","'.$email.'","'.$link.'","'.$coment ario.'","'.$vienede.'");'; $IdInsercion = mysql_query($Query, $IdConexion); } |
| |||
Bueno .. el código está incompleto (no se vé parte de conexión a tu BD ..) .. tampoco vemos el formulario que usas .... Tampoco indicas el error exacto que obtienes o que hace de "mal" el script ... En fin .. que si no detallas mejor el problema es imposible dar con la respuesta .. Sólo algunos consejos: Usa: Código PHP: Revisa la configuración de tu php.ini (apartado register_globals ... Si está a ON podrás recoger las variables de tu formulario como lo estás haciendo .. pero si está a OFF .. no). En una de las primeras FAQ's de este foro tienes una explicación al respecto ... ----- Sobre lo otro que comentas ... Volvemos a lo mismo Falta código o datos para ver como "vuelves" a tu página del formulario ... Para recuperar los datos "donde estaban" en tu formulario .. puedes usar desde simple javascript .. sería un history.back() o algo así como link ... (eso preguntalo en el foro Javascript mejor) O pasandole las variables "de vuelta" al formulario ya sea por GET (por el URL) .. o por una session (o cookie) (recomendable sesión ..) para "poblar" tus estados de los <input> etc que uses en su parámetro value= .. de cada objeto de formulario .. Un saludo,
__________________ Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo. |
| ||||
Bueno, ya me voy a desconectar... pero te dejo otro consejo... $IdInsercion = mysql_query($Query, $IdConexion) or die (mysql_error()); Eso te va a decir si esta sucediendo algo mal al tratar de meter los datos en la BD... Saludos!!!
__________________ Manoloweb |
| |||
Formulario Hola, estoy empezando a programar en php, tengo un formulario el cual le estoy dando validaciones a los campos y los envio a una tabla en base de datos en mysql, no me sale... quisiera una ayuda por favor... Otra consulta, cuando tengo un error de escritura en un campo y quiero retornar al formulario me aparece todo en blanco, quisiera que los datos no se borren y poder cambiar solo el que esta mal escrito...se puede?????..... ![]() |
| |||
Manoloweb, este es el php...mas abajo esta el formulario.... <HTML> <HEAD> <TITLE> Ejemplo MySQL </TITLE> <meta http-equiv="refresh" content="1;URL=acordes.htm"> </HEAD> <BODY BGCOLOR=white> <?php include "acordes.htm"; $NombreBD = "access_usuario"; $Servidor = "localhost"; $Usuario = "access_peru"; $Password = "cristiano"; $IdConexion = mysql_connect($Servidor, $Usuario, $Password) or die ('I cannot connect to the database because: ' . mysql_error()); print("Se acaba de establecer la conexión.<BR>"); print("Servidor: ".$Servidor."<P>"); mysql_select_db($NombreBD, $IdConexion); if ($nombre == "") { echo "Por favor ingrese su nombre<br>"; } else if (!ereg('^[a-z0-9]+([\.]?[a-z0-9_-]+)*@'.'[a-z0-9]+([\.-]+[a-z0-9]+)*\.[a-z]{2,}$',$email)) { echo "Por favor ingrese su email correctamente<br>"; } else if ($link == "") { echo "Por favor ingrese un link http://www.link.com"; } else if (!$nombre=="" and !$email=="" and !$link=="") { $Query = 'INSERT INTO datos'. ' (nombre,email,link,comentario,viene_de)'. ' VALUES ('. '"'.$nombre.'","'.$email.'","'.$link.'","'.$coment ario.'","'.$vienede.'");'; $IdInsercion = mysql_query($Query, $IdConexion); } ?> FROMULARIO...... <html> <head> <title>PeruCristiano</title> </head> <body> <table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr> <td class="titulos-centro">Acordes</td> </tr> <tr> <td> </td> </tr> <tr> <td><br> <form name="form1" method="post" action="exform.php"> <table width="40%" border="0" align="center" cellpadding="0" cellspacing="3"> <tr> <td colspan="3"><div align="center" class="titulos-centro"><strong>Acordes<br> </strong><span class="comentario">Aqui puedes enviarnos el link que quieras que agreguemos a esta área</span><font color="#000000" size="2" face="Arial, Helvetica, sans-serif"> </font></div></td> </tr> <tr> <td class="texto-fizq"> </td> <td colspan="2"><input name="vienede" type="hidden" id="acordes" value="acor"></td> </tr> <tr> <td width="34%" class="texto-fizq">Tu Nombre :</td> <td colspan="2"><input name="nombre" type="text" id="nombre"></td> </tr> <tr> <td class="texto-fizq">e-Mail :</td> <td colspan="2"><input name="email" type="text" id="email"></td> </tr> <tr> <td class="texto-fizq">Link :</td> <td colspan="2"><input name="link" type="text" id="link"></td> </tr> <tr> <td class="texto-fizq">Comentario :</td> <td colspan="2"><textarea name="comentario" cols="35" rows="5" id="comentario"></textarea></td> </tr> <tr> <td> </td> <td colspan="2"> </td> </tr> <tr> <td> </td> <td width="21%"><input name="enviar" type="submit" id="enviar" value="Enviar"></td> <td width="45%"><input name="borrar" type="reset" id="borrar" value="Borrar"></td> </tr> </table> <br> </form></td> </tr> </table> </body> </html> |
| ||||
Necesitamos ver el codigo y los errores que te manda..
__________________ |
| |||
Camargo hola, este es el codigo PHP..... mas abajo esta el fomulario... <?php include "acordes.htm"; $NombreBD = "access_usuario"; $Servidor = "localhost"; $Usuario = "access_peru"; $Password = "cristiano"; $IdConexion = mysql_connect($Servidor, $Usuario, $Password) or die ('I cannot connect to the database because: ' . mysql_error()); print("Se acaba de establecer la conexión.<BR>"); print("Servidor: ".$Servidor."<P>"); mysql_select_db($NombreBD, $IdConexion); if ($nombre == "") { echo "Por favor ingrese su nombre<br>"; } else if (!ereg('^[a-z0-9]+([\.]?[a-z0-9_-]+)*@'.'[a-z0-9]+([\.-]+[a-z0-9]+)*\.[a-z]{2,}$',$email)) { echo "Por favor ingrese su email correctamente<br>"; } else if ($link == "") { echo "Por favor ingrese un link http://www.link.com"; } else if (!$nombre=="" and !$email=="" and !$link=="") { $Query = 'INSERT INTO datos'. ' (nombre,email,link,comentario,viene_de)'. ' VALUES ('. '"'.$nombre.'","'.$email.'","'.$link.'","'.$coment ario.'","'.$vienede.'");'; $IdInsercion = mysql_query($Query, $IdConexion); } ?> FORMULARIO:::::::::::::::::::::::::::::::::::: <html> <head> <title>PeruCristiano</title> </head> <body> <table width="100%" border="0" cellspacing="0" cellpadding="0"> <tr> <td class="titulos-centro">Acordes</td> </tr> <tr> <td> </td> </tr> <tr> <td><br> <form name="form1" method="post" action="exform.php"> <table width="40%" border="0" align="center" cellpadding="0" cellspacing="3"> <tr> <td colspan="3"><div align="center" class="titulos-centro"><strong>Acordes<br> </strong><span class="comentario">Aqui puedes enviarnos el link que quieras que agreguemos a esta área</span><font color="#000000" size="2" face="Arial, Helvetica, sans-serif"> </font></div></td> </tr> <tr> <td class="texto-fizq"> </td> <td colspan="2"><input name="vienede" type="hidden" id="acordes" value="acor"></td> </tr> <tr> <td width="34%" class="texto-fizq">Tu Nombre :</td> <td colspan="2"><input name="nombre" type="text" id="nombre"></td> </tr> <tr> <td class="texto-fizq">e-Mail :</td> <td colspan="2"><input name="email" type="text" id="email"></td> </tr> <tr> <td class="texto-fizq">Link :</td> <td colspan="2"><input name="link" type="text" id="link"></td> </tr> <tr> <td class="texto-fizq">Comentario :</td> <td colspan="2"><textarea name="comentario" cols="35" rows="5" id="comentario"></textarea></td> </tr> <tr> <td> </td> <td colspan="2"> </td> </tr> <tr> <td> </td> <td width="21%"><input name="enviar" type="submit" id="enviar" value="Enviar"></td> <td width="45%"><input name="borrar" type="reset" id="borrar" value="Borrar"></td> </tr> </table> <br> </form></td> </tr> </table> </body> </html> |
| ||||
Para que triplicas el mensaje ¬¬
__________________ |
| ||||
Primero vamos a colorarlo Código PHP: ![]() |
| |||
lo mas probable que te este pasando es que tengas register_global en off en tu php.ini (en los faq puedes encontrar mas info sobre este tema) prueba con este codigo Código PHP: Salu2 ![]() |
| ||||
Ahi tienes otra alternativa, toma el mas funcional. Código PHP:
Código:
Nota: @, ese simbolo es para evitar un warning.<td width="34%" class="texto-fizq">Tu Nombre :</td> <td colspan="2"><input name="nombre" type="text" id="nombre" value="<?php echo @$form['nombre'];?>"></td> </tr> <tr> <td class="texto-fizq">e-Mail :</td> <td colspan="2"><input name="email" type="text" id="email" value="<?php echo @$form['email'];?>"></td> </tr> <tr> <td class="texto-fizq">Link :</td> <td colspan="2"><input name="link" type="text" id="link" value="<?php echo @$form['link'];?>"></td> </tr> <tr> Saludos Última edición por biblio; 02/08/2003 a las 11:26 |
| |||
![]() Biblio cuando coloco el value value="<?php echo @$form['link'];?>"></ no se guardan los datos..se pierden...ahora quizas es la manera en que regresa al formulario...yo hago un refresh desde la pagina que procesa el php este es: <meta http-equiv="refresh" content="1;URL=acordes.php"> si me puedes ayudar...gracias. |
| ||||
cuantas páginas estas manejando para el proceso?. El código que pegaste solo me indica uno, y nop veo mayor problema con el código que te pasé. Si lo estas redireccioanndo a otra página, y tratando de poner el ejemplo que te di, no funcionará. Explica mejor tu lógica. |
| |||
Ok, tengo una pagina con el sgte. nombre "acordes.php" en donde se encuentra el formulario...al enviar el formulario se va a "exform1.php" que contiene el codigo php.... aqui yo lo redireccionaba a "acordes.php" en donde esta el formulario en caso de haber ingresado informacion errada y poder corregir... es ahi mi pregunta yo quiero que los datos ingresados al retornar al formulario se mantengan y solo poder corregir el malo. ...pero no se si se hace asi... lo que quiero es que exform1.php ejecute el codigo, valide los campos y luego los envie a una base de datos. Espero me haya dejado entender.... gracias.... |
| |||
hugosayers He procedido a juntar todos tus mensajes abiertos sobre el mismo tema .. Por favor no vuelvas a repetir esta situación en adelante. Con que preguntes una vez sobra .. así no haces más que confundir a los que te intentan ayudar pues se repiten las mismas preguntas y a veces mismas respuestas en todos los mensajes que tienes abiertos sobre el mismo tema .. Un saludo,
__________________ Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo. |
| |||
hola Cluster, hola mira disculpas por ello, el problema es que soy nuevo en este foro, pense que estas preguntas eran individuales y llegaban a la persona que me dirigia...pero bueno gracias por tu consejo. |