Foros del Web » Programando para Internet » PHP »

No tomas datos desde formulario

Estas en el tema de No tomas datos desde formulario en el foro de PHP en Foros del Web. Hola, estoy ingresando al mundo LAMP y tengo el siguiente problema: Ingreso datos a un formulario basico, mediante un formulario POST, Cita: <form action=insertar.php method=post> ...
  #1 (permalink)  
Antiguo 17/10/2012, 10:56
 
Fecha de Ingreso: octubre-2012
Mensajes: 2
Antigüedad: 11 años, 6 meses
Puntos: 0
No tomas datos desde formulario

Hola, estoy ingresando al mundo LAMP y tengo el siguiente problema:

Ingreso datos a un formulario basico, mediante un formulario POST,

Cita:

<form action=insertar.php method=post>
<div id="Layer1" style="position:absolute; width:331px; height:172px; z-index:1">
<p>Nombre:
<input name="nombref" type="text" id="nombref">
</p>
<p>Autor:
<input name="autorf" type="text" id="autorf">
</p>
<p>Categoria:
<input name="categoriaf" type="text" id="categoriaf">
</p>
<p>
<input type="submit" name="button" id="button" value="Enviar">
</p>
</div>
<label></label>
<p><label></label>
</p>
</form>

los datos aparecen que son enviados en la barra de direcciones:

Cita:
http://localhost/pruebas/insertar.php?nombref=Rodrigo&autorf=Roy&categoriaf=4&Submit=Env iar
Pero al querer mostrarlos en la pagina PHP mediante un "echo", no aparecen, y en la bd aparece el registro de un nuevo dato (se agrega una linea a la bd) pero los campos aparecen en blanco.

Cita:

<?php
$servidor = "localhost";
$usuario = "prueba";
$contrasena = "ruleta78";
$BD = "conectar";

$conexion = @mysql_connect($servidor, $usuario, $contrasena);

if (!$conexion) {die('<strong>No pudo conectarse:</strong> ' . mysql_error());
}else{

echo 'Conectado satisfactoriamente al servidor <br/>';
$nombre = isset($_POST['nombref']) ? $_POST['nombref'] : '' ;
$autor=$_POST['autorf'];
echo "Autor = " . $autor;
}

mysql_select_db($BD, $conexion) or die(mysql_error($conexion));


$insertar = mysql_query("INSERT INTO libros (nombre, autor, categoria) VALUES ('".$nombre."','{$_POST['autorf']}','{$_POST['categoriaf']}')", $conexion);
if (!$insertar) {
die("Fallo en la insercion de registro en la Base de Datos: " . mysql_error());
}

mysql_close($conexion);
?>
Alguna idea ??

Gracias
  #2 (permalink)  
Antiguo 17/10/2012, 10:58
Avatar de memoadian
Colaborador
 
Fecha de Ingreso: junio-2009
Ubicación: <?php echo 'México'?>
Mensajes: 3.696
Antigüedad: 14 años, 10 meses
Puntos: 641
Respuesta: No tomas datos desde formulario

sip

<form action="insertar.php" method="post">

usa comillas, si los datos aparecen en la barra de direcciones, no están siendo enviados por post si no por get.
  #3 (permalink)  
Antiguo 18/10/2012, 03:59
Avatar de antoniopol  
Fecha de Ingreso: agosto-2012
Ubicación: Valladolid
Mensajes: 114
Antigüedad: 11 años, 8 meses
Puntos: 21
Respuesta: No tomas datos desde formulario

Como dice memoadian, al no poner las comillas no te esta tomando esos valores y aparecen en la URL ya que por defecto se envia mediante GET.
__________________
>> Blog de desarrollo web.
>> @antoniopol06 amante de la Web =D
  #4 (permalink)  
Antiguo 18/10/2012, 09:53
 
Fecha de Ingreso: octubre-2012
Mensajes: 2
Antigüedad: 11 años, 6 meses
Puntos: 0
Respuesta: No tomas datos desde formulario

Ok, muchas gracias... pequeño gran detalle, le puse las comillas y me aparecieron los datos.

Gracias !!

Etiquetas: formulario, mysql, registro, sql, tomas, usuarios
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 12:14.