PASAR DATOS A MYSQL
Publicado por hector (2 intervenciones) el 14/11/2008 23:21:11
Saludos gentil comunidad
Bien mi caso es el siguiente, lo q sucede es que cuando valido un campo en el formulario, el boton "enviar" me manda a una pagina o zona en blanco del script del php donde esta la conexion a la BD y su respectiva insercion en la tabla, digamos q de tres campos q tengo en el form q son: nombre,telefono,correo, digamos no lleno correo, me sale un alert "ingrese su correo" le doy aceptar y me manda a una zona en blanco de mi enlace de destino llamado registro.php, tengo q hacer click en el boton retroceder del navegador para q me muestre el formulario inicial q estaba llenando, este es el script
<?php
// Insertar en la Base de Datos
$conexion = mysql_connect ("localhost", "serglo")
or die ("No se puede conectar con el servidor");
mysql_select_db ("test")
or die ("No se puede seleccionar la base de datos");
$fecha = date ("Y-m-d"); // Fecha actual
$instruccion = "insert into age (nom, fono, email) values ('$nom', '$fono', '$email')";
$consulta = mysql_query ($instruccion, $conexion)
or die ("Fallo en la consulta");
mysql_close ($conexion);
// Mostrar datos introducidos
print ("<H1>DATOS ALMACENADOS</H1> ");
print ("<H2>Resultado de la inserción de sus datos</H2> ");
print ("Los datos han sido almacenados correctamente:");
print ("<UL>");
print ("<LI>Nombre: " . $nom);
print ("<LI>Telefono: " . $fono);
print ("<LI>E-Mail: " . $email);
print ("</UL>");
print ("<BR>");
print ("[ <A HREF='flisto.php'>grabacion Ok</A> ]");
?>
<html>
<head>
<meta http-equiv="Content-Language" content="es">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>Nombre</title>
<script language="JavaScript">
function Validar(formulario){
if (formulario.nom.value == "")
{ alert("Por favor ingrese su nombre"); return; }
if (formulario.fono.value == "")
{ alert("Por favor ingrese su telefono"); return; }
if (formulario.email.value == "")
{ alert("Por favor ingrese su E-mail"); return; }
formulario.submit();
}
</script>
</head>
<body>
<form name=formulario method="post" action="flisto.php">
<table border="0" width="59%" id="table3" cellspacing="1">
<tr>
<td width="118"><font face="Verdana" size="2">Nombre:</font></td>
<td><input type="text" name="nom" size="20"></td>
</tr>
<tr>
<td width="118"><font face="Verdana" size="2">Telefono:</font></td>
<td><input type="text" name="fono" size="20"></td>
</tr>
<tr>
<td width="118"><font face="Verdana" size="2">Correo:</font></td>
<td><input type="text" name="email" size="20"></td>
</tr>
</table>
<p><input type="submit" value="Enviar" name="insertar" onClick=Validar(this.form)>
<input type="reset" value="Restablecer" name="Resetear"></p>
</form>
* cuando lleno todo el formulario si me graba en la tabla, todo hasta ahi bien, pero cuando dejo un campo en blanco se activa la validacion me manda a una pagina en blanco y tengo q regresar para llenar el campo faltante, como hago para que cuando me olvide de llenar un campo solo me mande al cuadro de texto faltante y no a otra pagina
Bien mi caso es el siguiente, lo q sucede es que cuando valido un campo en el formulario, el boton "enviar" me manda a una pagina o zona en blanco del script del php donde esta la conexion a la BD y su respectiva insercion en la tabla, digamos q de tres campos q tengo en el form q son: nombre,telefono,correo, digamos no lleno correo, me sale un alert "ingrese su correo" le doy aceptar y me manda a una zona en blanco de mi enlace de destino llamado registro.php, tengo q hacer click en el boton retroceder del navegador para q me muestre el formulario inicial q estaba llenando, este es el script
<?php
// Insertar en la Base de Datos
$conexion = mysql_connect ("localhost", "serglo")
or die ("No se puede conectar con el servidor");
mysql_select_db ("test")
or die ("No se puede seleccionar la base de datos");
$fecha = date ("Y-m-d"); // Fecha actual
$instruccion = "insert into age (nom, fono, email) values ('$nom', '$fono', '$email')";
$consulta = mysql_query ($instruccion, $conexion)
or die ("Fallo en la consulta");
mysql_close ($conexion);
// Mostrar datos introducidos
print ("<H1>DATOS ALMACENADOS</H1> ");
print ("<H2>Resultado de la inserción de sus datos</H2> ");
print ("Los datos han sido almacenados correctamente:");
print ("<UL>");
print ("<LI>Nombre: " . $nom);
print ("<LI>Telefono: " . $fono);
print ("<LI>E-Mail: " . $email);
print ("</UL>");
print ("<BR>");
print ("[ <A HREF='flisto.php'>grabacion Ok</A> ]");
?>
<html>
<head>
<meta http-equiv="Content-Language" content="es">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>Nombre</title>
<script language="JavaScript">
function Validar(formulario){
if (formulario.nom.value == "")
{ alert("Por favor ingrese su nombre"); return; }
if (formulario.fono.value == "")
{ alert("Por favor ingrese su telefono"); return; }
if (formulario.email.value == "")
{ alert("Por favor ingrese su E-mail"); return; }
formulario.submit();
}
</script>
</head>
<body>
<form name=formulario method="post" action="flisto.php">
<table border="0" width="59%" id="table3" cellspacing="1">
<tr>
<td width="118"><font face="Verdana" size="2">Nombre:</font></td>
<td><input type="text" name="nom" size="20"></td>
</tr>
<tr>
<td width="118"><font face="Verdana" size="2">Telefono:</font></td>
<td><input type="text" name="fono" size="20"></td>
</tr>
<tr>
<td width="118"><font face="Verdana" size="2">Correo:</font></td>
<td><input type="text" name="email" size="20"></td>
</tr>
</table>
<p><input type="submit" value="Enviar" name="insertar" onClick=Validar(this.form)>
<input type="reset" value="Restablecer" name="Resetear"></p>
</form>
* cuando lleno todo el formulario si me graba en la tabla, todo hasta ahi bien, pero cuando dejo un campo en blanco se activa la validacion me manda a una pagina en blanco y tengo q regresar para llenar el campo faltante, como hago para que cuando me olvide de llenar un campo solo me mande al cuadro de texto faltante y no a otra pagina
Valora esta pregunta


0