Foros del Web » Programando para Internet » PHP »

prblema con variables

Estas en el tema de prblema con variables en el foro de PHP en Foros del Web. <? //---------Muetra todo los datos de la tabla function mostrar($cn){ if(!$sql=mysql_query("select * from libros"))die(sql_error()); while($data=mysql_fetch_object($sql)){ echo $data->id_libro."<br>"; echo $data->nombre."<br>"; echo $data->autor."<br>"; } } //-------Me dice ...
  #1 (permalink)  
Antiguo 12/07/2004, 11:58
Avatar de diegodnt  
Fecha de Ingreso: mayo-2004
Ubicación: Buenos aires
Mensajes: 227
Antigüedad: 13 años, 6 meses
Puntos: 0
Pregunta prblema con variables

<?
//---------Muetra todo los datos de la tabla
function mostrar($cn){
if(!$sql=mysql_query("select * from libros"))die(sql_error());
while($data=mysql_fetch_object($sql)){
echo $data->id_libro."<br>";
echo $data->nombre."<br>";
echo $data->autor."<br>";
}

}
//-------Me dice los errores de que tengo con respecto a la base
function sql_error(){
global $mysql_errno,$mysql_error;

if (empty($mysql_error)){
$mysql_errno=mysql_errno();
$mysql_error=mysql_error();
}
return"$mysql_errno: $mysql_error";
}
//----------------Formulario----------------
echo"<form action= mysqllibros.php method=put>";

$cn=mysql_connect("localhost","root");
$base=mysql_select_db("libreria",$cn);
echo"<center>";
echo"<b>El id del libro es: </b>";
echo"<br>";
$sql=mysql_query("select MAX(id_libro) from libros");
if(!$row=mysql_fetch_object($sql))die(sql_error()) ;
$r=$row->id_libro;
$r=$r+1;
echo "<b>".$r."</b>";
echo"<br>";
echo"<b>Ingrese el nombre del Libro</b> ";
echo"<br>";
echo"<input type text name=nombre>";
echo"<br>";
echo"<b>Ingrese el autor del libro</b>";
echo"<br>";
echo"<input type text name=autor>";
echo"<br>";
echo"<input type=submit name=alta value=alta >";//botones
echo"<input type=submit name=baja value=Baja>";//futura insercion
echo"<br>";
if ($alta=="alta"){//si se preciono el boton de alta
echo"hola";
if ($nombre<>""){
mysql_query("INSERT INTO libros(nombre, autor) values ($nombre','$autor')");//ESCRIBIR EN LA TABLA LOS VALORES
}
mostrar($cn);//FUNCION MOSTRAR
}
echo"</center>";
echo"</form>";
mysql_close($cn);
?>
Bueno este es el codigo de mi web y lo qiue quiero hacer es que cuando se presione el boton alta se me graben los registros introducidos en mi base de datos, el problema es que cuando aprieto el boton no pasa nada. me parece que no me esta reconociendo las variables tengoel mismo sitio pero echo en PG y me funciona barabro y ahora lo hago con MYSQL y nada no funciona eso del boton y sin ese boton no puedo cargar mi base. NECESITARIA ayuda urgente gracias
@@@[email protected]@@
__________________
. Woo hoo When I feel heavy metal
  #2 (permalink)  
Antiguo 12/07/2004, 12:04
Avatar de sism82  
Fecha de Ingreso: octubre-2003
Ubicación: Guadalajara
Mensajes: 865
Antigüedad: 14 años, 1 mes
Puntos: 1
en esta parte:
Código PHP:
if ($alta=="alta"){//si se preciono el boton de alta 
modificala por:

Código PHP:
if ($_POST['alta'] =="alta"){//si se presiono el boton de alta 
y en el action del formulario usa method="post"

en el value de los botones procura poner value="alta" con comillas. Si ya usaste comillas para el echo, entonces escapa las nuevas comillas con \"

html aguanta muchas cosas incorrectas, pero es preferible hacerlo adecuadamente.

un saludo
  #3 (permalink)  
Antiguo 12/07/2004, 12:26
Avatar de diegodnt  
Fecha de Ingreso: mayo-2004
Ubicación: Buenos aires
Mensajes: 227
Antigüedad: 13 años, 6 meses
Puntos: 0
hola muchas gracias "sism82" ya solucione el problema con eso pero tengo otro, y es que no me guarda los datos en mi base, y no se porque ya que tengo todo bien (CREO), si alguien me podria ayudar, Muchas gracias.
__________________
. Woo hoo When I feel heavy metal
  #4 (permalink)  
Antiguo 12/07/2004, 12:36
Avatar de sism82  
Fecha de Ingreso: octubre-2003
Ubicación: Guadalajara
Mensajes: 865
Antigüedad: 14 años, 1 mes
Puntos: 1
el problema es el mismo. Las variables que recibes desde formularios con method="post" recibelas en PHP con $_POST['nombrevariable']

se puede hacer como lo tienes en tu codigo, pero no es muy buena idea, y con algunas configuraciones de PHP (register_globals = off) no funciona.

si tienes...

Código:
<form name="forma" action="mysqllibros.php" method="post">
<input type="text" name="nombre">
</form>
entonces para desplegarla en pantalla es...

[php]
echo $_POST['nombre'];
[/[php]

un saludo
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 05:05.