Foros del Web » Programando para Internet » PHP »

Ayuda con Formulario por favor

Estas en el tema de Ayuda con Formulario por favor en el foro de PHP en Foros del Web. buenas tardes, amigos, soy nuevo en el foro, y apenas estoy introduciendome al lenguaje del php&mysql, pero he tenido algunos inconvenientes con el formulario que ...
  #1 (permalink)  
Antiguo 12/07/2008, 21:30
 
Fecha de Ingreso: julio-2004
Mensajes: 323
Antigüedad: 19 años, 9 meses
Puntos: 1
Pregunta Ayuda con Formulario por favor

buenas tardes, amigos, soy nuevo en el foro, y apenas estoy introduciendome al lenguaje del php&mysql, pero he tenido algunos inconvenientes con el formulario que les dejare a continuacion, mientras tanto les explico mi problema, he creado mi base de datos, usuario, contraseña, di todos los permisos al usuario, y cree en la db los campos, id key principal que esta asignada para tener el permiso de auto expancion, tambien, las variables, nombre, direccion, telefono, cedula y comentario, luego de crearlas, probe ingresando datos dentro del mismo cpanel, y los datos ingresados alli me apecieron dentro de la estructura de la tabla agenda, ahora el problema viene cuando relleno el formulario y hago el envio, estos datos que envio nunca se guardan en la base de datos (osea en la estructura no aparecen), no se en que estare fallando con la codificacion, y quisiera que por favor me ayudaran, muchas gracias y disculpen las molestias si estoy posteando donde no es. gracias anticipadamente, y hasta luego, por favor respondan lo mas pronto posible. hasta luego y disculpen la molestias... me despido att:SAIROX...

el codigo es el siguiente:


<?php
$bd=mysql_connect("Localhost","estilo_carlos","mon cada") or die ("Error, No es posible conectarse a la base de datos");
mysql_select_db("estilo_mydb");

$opt=$_POST["opt"];

if ($opt==1)
{
$nombre=$HTTP_GET_VARS["nombre"];
$direccion=$HTTP_GET_VARS["direccion"];
$telefono=$HTTP_GET_VARS["telefono"];
$cedula=$HTTP_GET_VARS["cedula"];
$comentario=$HTTP_GET_VARS["comentario"];

$sql="insert into agenda(nombre, direccion, telefono, cedula, comentario) value ('".$nombre."','".$direccion."','".$telefono."','" .$cedula."','".$comentario."')";
$res=mysql_query($sql,$db) or die (mysql_error());
}
?>

<html>

<head>
<title>Contacto</title>
<style type="text/css">
<!--
.Estilo1 {
font-size: 36px;
font-style: italic;
font-weight: bold;
}
-->
</style>
</head>


<script language="javascript">

function verifica()
{
if (form1.cedula.value=="")
{
alert ("por favor ingrese su cedula");
return;
}
form1.opt.value=1;
form1.submit();
}
</script>


<body>
<p align="center" class="Estilo1">Contactanos</p>
<table width="579" height="416" border="1" align="center" bgcolor="#CCCCCC">
<tr>
<td width="569" height="410">
<form id="form1" name="form1" method="post" action="envioexitoso.html">
<input type="hidden" name="opt">
<div align="center">
<p><strong>Nombre y Apellido:
<input name="nombre" type="text" id="nombre" size="80" maxlength="150">
</strong></p>
</div>
</label>
<div align="center"><strong>
</strong></div>
<strong><label>
<div align="center">Direccion:
<input name="direccion" type="text" id="direccion" size="90" maxlength="200">
</div>
</label>
</strong>
<p align="center"><strong>
</strong><strong>
<label>
</label>
</strong>
<label><div align="left"><strong>
</strong>
<div align="justify"><strong>
<div align="right">Telefono
<input name="telefono" type="text" id="telefono" size="30" maxlength="15">
</div>
</strong></div>
</label>
<p align="right"><strong>
<label>Cedula
<input name="cedula" type="text" id="cedula" size="30" maxlength="8">
</label>
</strong></p>
<p align="center">
<strong>
<label>Comentario<br />
<textarea name="comentario" cols="80" rows="5" id="comentario"></textarea>
</label>
</strong> </p>
<p align="center">
<label>
<input type="submit" name="enviar" id="enviar" value="Enviar" onclick=verifica()>
</label>
</p>
</form>
<p>
</p></td>
</tr>
</table>

</body>
</html>
  #2 (permalink)  
Antiguo 12/07/2008, 22:28
 
Fecha de Ingreso: julio-2007
Ubicación: /home/victor
Mensajes: 114
Antigüedad: 16 años, 9 meses
Puntos: 0
Respuesta: Ayuda con Formulario por favor

Hola sairox

lo primero que haría yo seria cambiar de $HTTP_GET_VARS a $_POST

$nombre=$_POST["nombre"];

y lo otro sería el if

Código PHP:
<?php

$bd
=mysql_connect("Localhost","estilo_carlos","mon cada") or die ("Error, No es posible conectarse a la base de datos");
mysql_select_db("estilo_mydb");

if (
$_POST[enviar]) {
$nombre=$_POST["nombre"];
$direccion=$_POST["direccion"];
$telefono=$_POST["telefono"];
$cedula=$_POST["cedula"];
$comentario=$_POST["comentario"];

$sql="insert into agenda(nombre, direccion, telefono, cedula, comentario) value ('".$nombre."','".$direccion."','".$telefono."','" .$cedula."','".$comentario."')";
$res=mysql_query($sql,$db) or die (mysql_error());
}
?>
Espero te sirva

Saludos...
  #3 (permalink)  
Antiguo 12/07/2008, 22:39
 
Fecha de Ingreso: julio-2004
Mensajes: 323
Antigüedad: 19 años, 9 meses
Puntos: 1
Respuesta: Ayuda con Formulario por favor

muchas gracias pana, pues te digo que acabo de probar, con el code que modificaste, pero da el mismo problema, despues de que relleno el formularios los datos no llegan a la base de datos :S y es extraño por que todos los datos de conexion son correctos :S
  #4 (permalink)  
Antiguo 12/07/2008, 22:43
 
Fecha de Ingreso: julio-2007
Ubicación: /home/victor
Mensajes: 114
Antigüedad: 16 años, 9 meses
Puntos: 0
Respuesta: Ayuda con Formulario por favor

Código PHP:
<?php

$sql
="insert into agenda(nombre, direccion, telefono, cedula, comentario) value ('$nombre','$direccion','$telefono','$cedula','$comentario')";
$res=mysql_query($sql,$db) or die (mysql_error());
?>
y ahora
  #5 (permalink)  
Antiguo 12/07/2008, 22:58
 
Fecha de Ingreso: julio-2004
Mensajes: 323
Antigüedad: 19 años, 9 meses
Puntos: 1
Respuesta: Ayuda con Formulario por favor

nada pana :S lo mismo jeje
  #6 (permalink)  
Antiguo 12/07/2008, 23:07
 
Fecha de Ingreso: julio-2007
Ubicación: /home/victor
Mensajes: 114
Antigüedad: 16 años, 9 meses
Puntos: 0
Respuesta: Ayuda con Formulario por favor

me acabo de percatar....

en el action de tu form sera mejor que lo saques...de lo contrario no se añadiran nunca los datos.... osea

dejalo de esta manera

<form id="form1" name="form1" method="post" action="<?=$PHP_SELF?>">

y para que te de envio exitoso debes hacer esto

Código PHP:
if ($_POST[enviar]) {
$nombre=$_POST["nombre"];
$direccion=$_POST["direccion"];
$telefono=$_POST["telefono"];
$cedula=$_POST["cedula"];
$comentario=$_POST["comentario"];

$sql="insert into agenda(nombre, direccion, telefono, cedula, comentario) values ('$nombre','$direccion','$telefono','$cedula','$comentario')";
$res=mysql_query($sql,$db) or die (mysql_error());

echo <<<html
<script>
window.location="envioexitoso.html";
</script>
html;

Espero que ahora si, además debes fijarte bien en tu sintaxis, no es lo mismo value que values...

Saludos...
  #7 (permalink)  
Antiguo 12/07/2008, 23:13
 
Fecha de Ingreso: julio-2004
Mensajes: 323
Antigüedad: 19 años, 9 meses
Puntos: 1
Respuesta: Ayuda con Formulario por favor

ok voy a probar
  #8 (permalink)  
Antiguo 12/07/2008, 23:17
 
Fecha de Ingreso: julio-2004
Mensajes: 323
Antigüedad: 19 años, 9 meses
Puntos: 1
Respuesta: Ayuda con Formulario por favor

me dice que hay error en sintaxys mira:
Parse error: syntax error, unexpected $end in /home/estilo/public_html/carlosmoncada/contact.php on line 112
y modifique el codigo como me dijiste aqui te lo dejo para que verifiques:





<?php
$bd=mysql_connect("Localhost","estilo_carlos","mon cada") or die ("Error, No es posible conectarse a la base de datos");
mysql_select_db("estilo_mydb");

if ($_POST[enviar]) {
$nombre=$_POST["nombre"];
$direccion=$_POST["direccion"];
$telefono=$_POST["telefono"];
$cedula=$_POST["cedula"];
$comentario=$_POST["comentario"];

$sql="insert into agenda(nombre, direccion, telefono, cedula, comentario) values ('$nombre','$direccion','$telefono','$cedula','$co mentario')";
$res=mysql_query($sql,$db) or die (mysql_error());
?>



echo <<<html
<script>
window.location="envioexitoso.html";
</script>
<head>
<title>Contacto</title>
<style type="text/css">
<!--
.Estilo1 {
font-size: 36px;
font-style: italic;
font-weight: bold;
}
-->
</style>
</head>


<script language="javascript">

function verifica()
{
if (form1.cedula.value=="")
{
alert ("por favor ingrese su cedula");
return;
}
form1.opt.value=1;
form1.submit();
}
</script>


<body>
<p align="center" class="Estilo1">Contactanos</p>
<table width="579" height="416" border="1" align="center" bgcolor="#CCCCCC">
<tr>
<td width="569" height="410">
<form id="form1" name="form1" method="post" action="<?=$PHP_SELF?>">
<input type="hidden" name="opt">
<div align="center">
<p><strong>Nombre y Apellido:
<input name="nombre" type="text" id="nombre" size="80" maxlength="150">
</strong></p>
</div>
</label>
<div align="center"><strong>
</strong></div>
<strong><label>
<div align="center">Direccion:
<input name="direccion" type="text" id="direccion" size="90" maxlength="200">
</div>
</label>
</strong>
<p align="center"><strong>
</strong><strong>
<label>
</label>
</strong>
<label><div align="left"><strong>
</strong>
<div align="justify"><strong>
<div align="right">Telefono
<input name="telefono" type="text" id="telefono" size="30" maxlength="15">
</div>
</strong></div>
</label>
<p align="right"><strong>
<label>Cedula
<input name="cedula" type="text" id="cedula" size="30" maxlength="8">
</label>
</strong></p>
<p align="center">
<strong>
<label>Comentario<br />
<textarea name="comentario" cols="80" rows="5" id="comentario"></textarea>
</label>
</strong> </p>
<p align="center">
<label>
<input type="submit" name="enviar" id="enviar" value="Enviar" onclick=verifica()>
</label>
</p>
</form>
<p>
</p></td>
</tr>
</table>

</body>
html;
}
  #9 (permalink)  
Antiguo 12/07/2008, 23:21
Avatar de eZakto  
Fecha de Ingreso: julio-2008
Mensajes: 214
Antigüedad: 15 años, 9 meses
Puntos: 5
Respuesta: Ayuda con Formulario por favor

Borra el "?>" que hay justo después de la línea:
Código PHP:
$res=mysql_query($sql,$db) or die (mysql_error()); 
Y escríbelo al final del archivo.
  #10 (permalink)  
Antiguo 12/07/2008, 23:21
 
Fecha de Ingreso: julio-2007
Ubicación: /home/victor
Mensajes: 114
Antigüedad: 16 años, 9 meses
Puntos: 0
Respuesta: Ayuda con Formulario por favor

Código PHP:
<?php
$bd
=mysql_connect("Localhost","estilo_carlos","mon cada") or die ("Error, No es posible conectarse a la base de datos");
mysql_select_db("estilo_mydb");

if (
$_POST[enviar]) {
$nombre=$_POST["nombre"];
$direccion=$_POST["direccion"];
$telefono=$_POST["telefono"];
$cedula=$_POST["cedula"];
$comentario=$_POST["comentario"];

$sql="insert into agenda(nombre, direccion, telefono, cedula, comentario) values ('$nombre','$direccion','$telefono','$cedula','$co mentario')";
$res=mysql_query($sql,$db) or die (mysql_error());

echo <<<html
<script>
window.location="envioexitoso.html";
</script>
html;
}
?>
<head>
<title>Contacto</title>
<style type="text/css">
<!--
.Estilo1 {
font-size: 36px;
font-style: italic;
font-weight: bold;
}
-->
</style>
</head>


<script language="javascript">

function verifica()
{
if (form1.cedula.value=="")
{
alert ("por favor ingrese su cedula");
return;
}
form1.opt.value=1;
form1.submit();
}
</script>


<body>
<p align="center" class="Estilo1">Contactanos</p>
<table width="579" height="416" border="1" align="center" bgcolor="#CCCCCC">
<tr>
<td width="569" height="410">
<form id="form1" name="form1" method="post" action="<?=$PHP_SELF?>">
<input type="hidden" name="opt">
<div align="center">
<p><strong>Nombre y Apellido:
<input name="nombre" type="text" id="nombre" size="80" maxlength="150">
</strong></p>
</div>
</label>
<div align="center"><strong>
</strong></div>
<strong><label>
<div align="center">Direccion:
<input name="direccion" type="text" id="direccion" size="90" maxlength="200">
</div>
</label>
</strong>
<p align="center"><strong>
</strong><strong>
<label>
</label>
</strong>
<label><div align="left"><strong>
</strong>
<div align="justify"><strong>
<div align="right">Telefono
<input name="telefono" type="text" id="telefono" size="30" maxlength="15">
</div>
</strong></div>
</label>
<p align="right"><strong>
<label>Cedula
<input name="cedula" type="text" id="cedula" size="30" maxlength="8">
</label>
</strong></p>
<p align="center">
<strong>
<label>Comentario<br />
<textarea name="comentario" cols="80" rows="5" id="comentario"></textarea>
</label>
</strong> </p>
<p align="center">
<label>
<input type="submit" name="enviar" id="enviar" value="Enviar" onclick=verifica()>
</label>
</p>
</form>
<p>
</p></td>
</tr>
</table>

</body>
  #11 (permalink)  
Antiguo 12/07/2008, 23:25
 
Fecha de Ingreso: julio-2004
Mensajes: 323
Antigüedad: 19 años, 9 meses
Puntos: 1
Respuesta: Ayuda con Formulario por favor

men sabes que probe con el primer codigo que postie, pero cambie el action por <?=$PHP_SELF?> y entonces al enviar el formulario me da error en la siguiente linea:

$res=mysql_query($sql,$db) or die (mysql_error());
  #12 (permalink)  
Antiguo 12/07/2008, 23:28
 
Fecha de Ingreso: julio-2007
Ubicación: /home/victor
Mensajes: 114
Antigüedad: 16 años, 9 meses
Puntos: 0
Respuesta: Ayuda con Formulario por favor

pues entonces dejalo sin action
  #13 (permalink)  
Antiguo 12/07/2008, 23:28
 
Fecha de Ingreso: julio-2004
Mensajes: 323
Antigüedad: 19 años, 9 meses
Puntos: 1
Respuesta: Ayuda con Formulario por favor

y el que me acabas de enviar tambien hizo lo mismo tiro error en
$res=mysql_query($sql,$db) or die (mysql_error());
  #14 (permalink)  
Antiguo 12/07/2008, 23:31
Avatar de eZakto  
Fecha de Ingreso: julio-2008
Mensajes: 214
Antigüedad: 15 años, 9 meses
Puntos: 5
Respuesta: Ayuda con Formulario por favor

Es porque la variable que contiene la conexión es "$bd" y con el mysql_query solicitas "$db".
  #15 (permalink)  
Antiguo 12/07/2008, 23:36
 
Fecha de Ingreso: julio-2004
Mensajes: 323
Antigüedad: 19 años, 9 meses
Puntos: 1
Respuesta: Ayuda con Formulario por favor

:S y que se supone que debo hacer ezakto :S xD
  #16 (permalink)  
Antiguo 12/07/2008, 23:42
Avatar de eZakto  
Fecha de Ingreso: julio-2008
Mensajes: 214
Antigüedad: 15 años, 9 meses
Puntos: 5
Respuesta: Ayuda con Formulario por favor

Puedes cambiar el $db por $bd, o cambiar el $bd por $db xD... Es más, en el mysql_query, sólo usa el primer parámetro, en este caso no te hará falta que especifiques la conexión, pues sólo tienes una sola.

Saludos.
  #17 (permalink)  
Antiguo 13/07/2008, 00:04
 
Fecha de Ingreso: julio-2004
Mensajes: 323
Antigüedad: 19 años, 9 meses
Puntos: 1
Respuesta: Ayuda con Formulario por favor

yaaaaaaaaaaaaaaaaaaaa alfin jajaja ya me di cuenta del errorsote jajajaja, xD no me habia dado cuenta de la vaina, xD jajaja vean esto xD:

<?php
$bd=mysql_connect("Localhost","estilo_carlos","mon cada") or die ("Error, No es posible conectarse a la base de datos");
---------------------------------------------------------------------
$res=mysql_query($sql,$db) or die (mysql_error());
?>


jajaja xD muchas gracias a todos por su ayuda jeje :P y si me funciono con el codigo tuyo vmac179 me funciono de las dos maneras muchas gracias pana xD

y gracias tambien eZakto xD jeje si no dices eso no me pongo a leer esa parte del code jajajaja xD

Última edición por Sairox; 13/07/2008 a las 00:16
  #18 (permalink)  
Antiguo 13/07/2008, 00:18
 
Fecha de Ingreso: julio-2007
Ubicación: /home/victor
Mensajes: 114
Antigüedad: 16 años, 9 meses
Puntos: 0
Respuesta: Ayuda con Formulario por favor

eso pasa poe copy paste..

saludos
  #19 (permalink)  
Antiguo 13/07/2008, 00:21
 
Fecha de Ingreso: julio-2004
Mensajes: 323
Antigüedad: 19 años, 9 meses
Puntos: 1
Respuesta: Ayuda con Formulario por favor

no men, xD jeje es q tecleo rapido y db ser que undi las teclas mal sin querer xD jejeje, a lo que menos le pare fue a esa parte del codigo por cierto el codigo que me enviaste tuve que modificarlo por que como lo enviabas daba error en donde hace la comparacios de valores, y funciona de las dos maneras todo el error era la palaba bd xD jeje
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 01:29.