PHP - Fallo de formulario

 
Vista:

Fallo de formulario

Publicado por Maria (7 intervenciones) el 03/02/2006 13:36:34
Hola!!
Tengo una duda,a ver hecho un formulario para poder insertar en una base de datos los datos de un equipo, bueno pos cuando
doy al boton de registrar los datos una vez tengo relleno el formulario no funciona pq no hace nada, como si no dieras al
boton.
el codigo es mas o menos el siguiente:
if ($_GET['accion']=="nuevo"){
echo <<<HTML
<form method="post" action="$PHP_SELF?accion=hacernuevo">
<table width="756" border="1" cellspacing="0" cellpadding="0" bordercolor="#f7f7f7" align="center">
<tr bordercolor="#CCCCCC" bgcolor="#f7f7f4">
<td height="30" colspan="3"> <div align="center"><font face="Tahoma, Verdana, Arial, Helvetica, sans-serif" size="2" color="#0033CC"><b>NUEVO
EQUIPO</b></font></div></td>
</tr>
<tr>
<td width="140"><div align="left"><font face="Tahoma, Arial, Verdana" color="#000033" size="2" ><b>Tipo de equipo:</b>
</font></div></td>
<td colspan="2"><b><font face="Tahoma, Verdana,Arial, sans-serif" size="2">
<input name="tipoEq" type="text" class="imputbox" id="tipoEq" size="88" maxlength="40">
</div></td>
</tr>
......
<tr bgcolor="#f7f7f4">
<td colspan="2" height="40"> <div align="center"><b><font face="Tahoma, Verdana, Arial, Helvetica, sans-serif" size="2">
<input type="submit" name="Submit" align="center" value=" Registrar " class="botones" >
</font></b> </div></td><td bgcolor="#f7f7f4"></td>
</tr>
</table>
<div align="center"><b><font face="Tahoma, Verdana, Arial, Helvetica, sans-serif" size="2">
</font></b> </div>
</form>

HTML;
}//fin de if nuevo

if($_GET['accion']=="hacernuevo"){

$tipoEq=$_POST['tipoEq'];
$codigo=$_POST['codigo'];
........
mysql_query("INSERT INTO equipos(tipoEq, codigo,marca,tecnico,direcc_IP,f_inicio,usuario,co ntraseña,descripcion,configuracion,proveedor) values('$tipoEq','$codigo','$marca','$tecnico','$d irecc_IP','$f_inicio','$usuario','$contraseña','$d escripcion','$configuracion','$proveedor')") or die("Error al intentar guardar los datos en Nuevo");
.....

HTML;

}//fin de accion hacernuevo

bueno esto es un resumen de como seria el codigo, si hecho mas formularios y me han funcionado bien pero este nose pq no va.
espero q con esto te hagas una idea.
gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Fallo de formulario

Publicado por Alberto (60 intervenciones) el 06/02/2006 10:25:40
No lo he mirado en detalle, pero si no le escapo es porque estas usando métodos distintos para mandar los datos y para compararlos.

Es decir, cuando definis el formulario pones:

.... <form method="post"..... ==> estas usando POST

y cuando comparas los datos pones

.....if ($_GET['accion']=="nuevo"){ .......

....if($_GET['accion']=="hacernuevo"){ ...

estas usando $_GET['accion'] en vez de $_POST['accion'].

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Fallo de formulario

Publicado por Maria (7 intervenciones) el 06/02/2006 16:34:38
Hola Alberto!!
Ya he probado lo q tu dices y sigue sin funcionar, ademas los demas formularios q tengo hechos estan asi y no han dado problema. No puede ser otra cosa la q no funcione???
Gracias.
Un saludo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Fallo de formulario

Publicado por alberto (60 intervenciones) el 07/02/2006 00:48:02
puede ser que otra cosa no funcione, pero me llama la atencion.

En fin proba lo siguiente, en el segundo if, en vez de hacer toda la operacion para insertar el registro en la base de datos, pone que te muestre los datos que debe recibir como parametro, asi vas a saber si los datos estan llegando o no, y si realmente se esta ejecutando esa parte de la pagina, si los datos se muestran bien entonces el problema esta en las instrucciones para agregar el registro a la bd, sino el problema debe estar en la llamada del boton submit, o en la propiedad action del formulario o en el metodo, (GET o POST).

Proba eso, te va a orientar para descubrir el problema.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Fallo de formulario

Publicado por maria (7 intervenciones) el 07/02/2006 10:00:16
Hola!!!
En serio muchas gracias por el interes.
Lo que hecho es la linea del form:"<form method="post" action="$PHP_SELF?accion=hacernuevo">" he añadio y he puesto un id para
identificar el formulario ppal pq como tenia varios formularios el boton no podia enviar el formulario ppal
<form method="post" action="$PHP_SELF?accion=hacernuevo" id="form_registrar">
Tambien el input de Registrar:"<input type="submit" name="Submit" align="center" value=" Registrar " class="botones" >"
le cambié el type de submit a button y en el evento onclick de este le puse que enviara el formulario principal:
<input type="button" name="Submit" align="center" value=" Registrar " class="botones" onclick="javascript:document.getElementById('form_registrar').submit();">
Lo he puesto asi pq me lo han dicho en un foro, pero vamos q ahora si funciona el boton pq ya si hace algo pero me da el error
siguiente:"Error al intentar guardar los datos en Nuevo".
Y bueno en la parte de arriba de la pagina me sale:"¶ÿ»·ÿ¼·ÿ¼·ÿ¼·ÿ¼¸ÿ½¸ÿ½¹ÿ½¹ÿ¾¹ÿ¾¹ÿ¿¹ÿ¿ºÿ¿ºÿ¿»ÿÀ¼ÿÀ¼ÿÁ¼ÿ½ÿ½ÿ¾ÿÿÿÄ¿ÿÄÀÿÄÀÿ
ÄÀÿÄÀÿÄÀÿÄÀÿÄÀÿÄÀÿÄÀÿÄÀÿÄÀÿÅÀÿÅÀÿÅÀÿÅÀÿÄÀÿÄÀÿÄÀÿÄÀÿÄÀÿÄÀÿÅÀÿÅÀÿÄÀÿÄÀÿÅÀÿÅÁÿÅÁÿÅÁÿÅÁÿÅÁÿÆÁÿÆÁÿÆÁÿÆÁÿÆÁÿÆÁÿÇÁÿÇÁÿÇÂÿÇÂÿÇÂÿÇÂÿÇÂ
ÿÇÂÿÇÂÿÇÁÿÆÁÿÆÁÿÆÁÿÆÁÿÆÁÿÆÁÿÅÁÿÅÁÿÅÁÿÅÁÿÅÁÿÅÁÿÅÁÿÅÀÿÅÀÿÄÀÿÄÀÿÄÀÿÄÀÿÄ¿ÿÄ¿ÿÄ¿ÿÄ¿ÿÿÿÿÿ¾ÿ½ÿÁ¼ÿÁ¼ÿÀ¼ÿ¿»ÿ¿ºÿ¿¹ÿ¾¹ÿ¾¹ÿ½¹ÿ½¸ÿ¼¸ÿ¼
¸ÿ¼·ÿ¼·ÿ¼·ÿ»·ÿ»·ÿ»·ÿ»·ÿ»·ÿ»·ÿ»·ÿ»·ÿ»·ÿ»·ÿ»·ÿ»·ÿ»·ÿ¼·ÿ¼·ÿ¼·ÿ¼·ÿ¼¸ÿ¼¸ÿ¼¸ÿ½¸ÿ½¹ÿ½¹ÿ½¹ÿ¾¹ÿ½¹ÿ½¹ÿ½¹ÿ½" y la verdad q nose pq.
Bueno, gracias y un saludo.
P.D.: si quieres te envio por email el codigo entero??Claro si te apetece estar mirandolo y tienes tiempo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Fallo de formulario

Publicado por alberto (60 intervenciones) el 07/02/2006 11:04:15
mmmm.... cada vez más raro!!!

Por empezar el tema de agregar el evento click en el submit, no hace falta, ya que gustamente cuando declaras un tipo "submit", automaticamente asume que debe ejecutar la pagina que pones en "action" y que le debe mandar como variable todos los datos de los campos del formulario.

Mandame el código a mi correo, lo reviso y te lo envio, en caso de que no encuentre el error te mando otro código diferente, pero que funcione.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar