Título: Usar "extract ($_REQUEST)" con method=post en formulario? Publicado por: NIGHTBIRD en 12 Junio 2010, 14:37 pm Hola a tod@s, soy nuevo en el mundo de PHP. Bueno, aqui os presento mi primer problemilla en PHP.
Tengo el siguiente formulario html form_ruta_nueva.html : <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Documento sin título</title> </head> <body> <form action="admin_ruta_edit.php" method="post" enctype="text/plain"> <table summary="" width="600" border="6" > <tr> <td colspan="2">Nombre:</td> <td colspan="3"><input type="text" name="nom" size="40" maxlength="35"></td> </tr> <tr> <td colspan="2">Descripcion:</td> <td colspan="3"><input type="text" name="descrip" size="40" maxlength="50"></td> </tr> <tr> <td colspan="2">Dias:</td> <td colspan="3"><input type="text" name="dias" size="40" maxlength="30"> </td> </tr> <tr> <td colspan="2">Precio:</td> <td colspan="3"><input type="text" name="precio" size="15" maxlength="20"> </td> </tr> <tr> <td colspan="2">Número de modalidad:</td> <td colspan="3"><input type="text" name="moda" size="15" maxlength="20"> </td> </tr> <tr> <td width="20%">Número de zona: </td> <td colspan="3"><input type="text" name="zona" size="15" maxlength="20"> </td> </tr> <tr> <td width="20%">Kilómetros: </td> <td colspan="3"><input type="text" name="km" size="15" maxlength="20"> </td> </tr> <tr> <td width="20%">Fecha de incio (año/mes/dia): </td> <td colspan="3"><input type="text" name="finicio" size="15" maxlength="20"> </td> </tr> <tr> <td width="20%">Fecha de fin (año/mes/dia): </td> <td colspan="3"><input type="text" name="ffin" size="15" maxlength="20"> </td> </tr> <tr> <td width="20%">Ficha de informacion: </td> <td colspan="3"><input type="file" name="info" size="15" maxlength="20"> </td> </tr> <tr> <td width="20%">Idioma (número): </td> <td colspan="3"><input type="text" name="idioma" size="15" maxlength="20"> </td> </tr> <tr> <td colspan="3" aling="center"><input type="submit" name="guardar" value="guardar"></td> <td colspan="2"><input type="reset" value="Borrar formulario"> </td> </tr> //Campo oculto que uso en la pagina php para entrar en la primera condicion if <input type="hidden" name="nuevo" value="nuevoo"> </table> </form> </body> </html> Ese formulario html invoca a la siguiente pagina php: <?php extract ($_REQUEST);//Esto extrae todas las variables del formulario //Si hemos invocado a esta página desde form_ruta_nueva.html if(isset($nuevo)){ $link=mysql_connect("localhost:3307","root","123456");//Conexión con el servidor MySQL $resul=mysql_select_db("bdrutas");//Seleccionamos la BD $auton="SELECT COUNT(codRuta) + 1 FROM rutas;"; $result_set=mysql_query($auton); $fila=mysql_fetch_row($result_set); $consulta="INSERT INTO rutas(codRuta,nombre_ruta,descripcion_ruta,dias,precio,modalidad,zona,km,FechaInicio,FechaFin,fichaInformacion, idioma) VALUES (".$fila[0].",'".$nom."','".$descrip."',".$dias.",'".$precio."','".$moda."','".$zona."',".$km.",'".$finicio."','".$ffin."','".$info."',".$idioma.");"; //print($consulta); $mete=mysql_query($consulta); if($mete){print "Datos introducidos correctamente";} else{print "Error al introducir datos";} mysql_close($link); } //Si hemos invocado a esta página desde admin_ruta_list.php else if (isset($codruta)){ . . . . . ?> El problema es que, si en el formulario pongo el method="post", al llamar a la página php, el extract ($_REQUEST); no obtiene ninguna variable del formulario html, en cambio, si uso el method="get" , el extract ($_REQUEST); si que es capaz de obtener las variables del formulario html. Es esto normal?? Existe alguna solucion, configuracion, o alguna otra funcion que haga lo mismo que extract ($_REQUEST)?? Gracias de antemano :-). Un saludo. Título: Re: Usar "extract ($_REQUEST)" con method=post en formulario? Publicado por: NIGHTBIRD en 12 Junio 2010, 18:19 pm Hola de nuevo. Ya lo he solucionado. El "error", era que debia eliminar el:
enctype="text/plain" en la creacion del formulario. Aunque no entiendo porque con method=get si me funcionaba. Un saludo. Título: Re: Usar "extract ($_REQUEST)" con method=post en formulario? Publicado por: TeKNo dUKe en 12 Junio 2010, 18:23 pm Porque por get las cosas no fueron "encodeadas" en ningun formato ya que las mandas por la url y en post las pasa a un texto plano.
Título: Re: Usar "extract ($_REQUEST)" con method=post en formulario? Publicado por: NIGHTBIRD en 12 Junio 2010, 18:32 pm Porque por get las cosas no fueron "encodeadas" en ningun formato ya que las mandas por la url y en post las pasa a un texto plano. Amm, ok, gracias por la info ;) |