Comunidad de diseño web y desarrollo en internet online

Problemas para subir datos a DB

Citar            
MensajeEscrito el 19 Ago 2009 11:57 pm
Buenas..
Estoy adentrandome a mysql y tratando de hacer algunas cosas con php..
Estube leyendo, y lo que queria es poder manejar los datos de una base de datos que tenge subida en el host, principalmente para hacer un sistema de comentarios..
Usea phpMyadmin para crear las tablas, y puedo ver el contenido usando algunas lineas de php..
Mi idea es poder subir datos a las tablas, y por lo que lei no es dificil, pero no me funciona..

Este es el codigo que probe ( tambien probe con algunos otros pero fui modificando el mismo archivo :B )

Código PHP :


<html>
<body>

<?php 
if ($enviar) {
   // process form
$conexion = mysql_connect('server', 'name', 'pass');
mysql_select_db('comentarios');
$sql = "INSERT INTO comentarios (nombre, comentario) ".
"VALUES ('$nombre', '$comentario')";
$result = mysql_query($sql);
echo "¡Gracias! Hemos recibido sus datos. "; 
}else{
?> 
  
   <form method="post" action="subir.php">
   Nombre:<input type="Text" name="nombre"><br>
   Comentario:<input type="Text" name="comentario"><br>
   <input type="Submit" name="enviar">
   </form> 
  
<?php 
} //end if 
?> 

</body>
</html> 



Quiero destacar que subir.php es el nombre de la misma pagina..

Me ejecuta el codigo, y me tira el echo, pero no cambia nada en la DB..
Lo hosteo en una cuenta gratuita de byethost..

Gracias de antemano ^^

Por Jinik

41 de clabLevel



 

Buenos Aires, Argentina

firefox
Citar            
MensajeEscrito el 20 Ago 2009 05:48 am

Por Inyaka

Claber

3176 de clabLevel

9 tutoriales
2 articulos

Genero:Masculino   Desarrollador de GAIA

Programador y fotógrafo

firefox
Citar            
MensajeEscrito el 20 Ago 2009 06:31 pm
Buenas..
Probe con el codigo que pusiste y nada..
Y el tuto que dejaste no me sirve, porque yo puedo ver las tablas, pero lo que busco es subir datos a las tablas que ya tengo creadas..

Por Jinik

41 de clabLevel



 

Buenos Aires, Argentina

firefox
Citar            
MensajeEscrito el 20 Ago 2009 06:40 pm
Hola:

Yo lo que veo en tu script es que la variable $enviar que es la que dispara la inserción en la base de datos no parece contener ningún valor. Sospecho que has hecho esto pensando que en tu servidor la directiva register_globals está en ON cuando en realidad está en OFF. Un consejo: siempre programa como si register_globals está en OFF.

Concretamente creo que deberías probar esto:

Código PHP :

$enviar = @$_POST["enviar"];
if ($enviar) { 
   // process form ...

Por DriverOp

Claber

2510 de clabLevel



 

opera
Citar            
MensajeEscrito el 20 Ago 2009 06:56 pm
debes verificar que:

  1. Te puedes conectar a la DB, para esto imprime cualquier variable que venga desde la DB
  2. Que las variables $nombre y $comentario contengan datos.
  3. Verifica que tu consulta este buena, para esto imprime en pantalla la variable $sql y luego pruebala en phpmyadmin (o tu cliente favorito)

Por Inyaka

Claber

3176 de clabLevel

9 tutoriales
2 articulos

Genero:Masculino   Desarrollador de GAIA

Programador y fotógrafo

firefox
Citar            
MensajeEscrito el 20 Ago 2009 08:27 pm
Buenas =)
Les cuento que pude resolverlo..
todos tenian un poco de razon, DriverOp eso me faltaba, y lo mismo tenia que darle el valor de los imputs a las variables..
La verdad es que recien intento meterme con php y esto, y no se practicamente nada..
Muchas gracias a todos =)

Por Jinik

41 de clabLevel



 

Buenos Aires, Argentina

firefox
Citar            
MensajeEscrito el 21 Ago 2009 03:55 am
Pues de nada. Sin embargo el tip que te di tiene un bug que recién veo: asumo que $_POST["enviar"] devuelve un valor booleano cuando no es así, lo correcto era:

Código PHP :

$enviar = @$_POST["enviar"]; 
if (!empty($enviar)) {  
   // process form ... 

Por DriverOp

Claber

2510 de clabLevel



 

opera

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.