Foros del Web » Programando para Internet » PHP »

La consulta MySQL no va

Estas en el tema de La consulta MySQL no va en el foro de PHP en Foros del Web. Hola. De estos errores los hay miles, pero no llego a entender por qué cuando intento insertar unos campos en la tabla no los inserta. ...
  #1 (permalink)  
Antiguo 30/10/2003, 10:44
Avatar de El Menda  
Fecha de Ingreso: junio-2001
Ubicación: Jaén
Mensajes: 516
Antigüedad: 16 años, 5 meses
Puntos: 0
La consulta MySQL no va

Hola. De estos errores los hay miles, pero no llego a entender por qué cuando intento insertar unos campos en la tabla no los inserta. Simplemente dice OK y MySQL no da ningun mensaje de error. Aqui va:
Código PHP:
<?
include("../plantillas/conexion.php");
$link Conectarse();
#Si el archivo se envia correctamente
  
$sql4 "SELECT id FROM trucoss WHERE idn='".$_POST['idn']."'";
  
$result mysql_query($sql4);
          if (
mysql_num_rows($result) > 0) {
echo 
"Update correcto";
          } else {
#Insertamos la nueva imagen
#Aqui no inserta la imagen
    
$sql5 "INSERT INTO trucoss (idn, total, 1) VALUES('".$_POST['idn']."', '1', '".$_FILES['archivo']['name']."')";
    
$result mysql_query($sql5);
echo 
"Subida correcta: <br>".$_POST['idn']."/".$_FILES['archivo']['name'];
          }
?>
Por supuesto, cuando ejecuto el script me aparece:
Subida correcta:
1/ctk_cu_1.gif
Por lo que se ve que las variables se han enviado bien.

Por si también os sirve, la tabla:
CREATE TABLE `trucoss` (
`id` int(10) NOT NULL auto_increment,
`idn` int(10) NOT NULL default '0',
`total` int(10) default NULL,
`1` varchar(150) default NULL,
`2` varchar(150) default NULL,
`3` varchar(150) default NULL,
`4` varchar(150) default NULL,
`5` varchar(150) default NULL,
`6` varchar(150) default NULL,
`7` varchar(150) default NULL,
`8` varchar(150) default NULL,
`9` varchar(150) default NULL,
`10` varchar(150) default NULL,
PRIMARY KEY (`id`)
) TYPE=MyISAM AUTO_INCREMENT=1 ;

Muchas gracias y saludos
__________________
"No hay mujer fea sino copa de menos"

Última edición por El Menda; 30/10/2003 a las 10:45
  #2 (permalink)  
Antiguo 30/10/2003, 10:52
Avatar de Manoloweb  
Fecha de Ingreso: enero-2002
Ubicación: Monterrey
Mensajes: 2.454
Antigüedad: 15 años, 10 meses
Puntos: 5
El problema es que tus campo idn y total son INT y los estas pasando como cadena...

Código PHP:
$sql4 "SELECT id FROM trucoss WHERE idn=".$_POST['idn'];

$sql5 "INSERT INTO trucoss (idn, total, 1) VALUES(".$_POST['idn'].", 1, '".$_FILES['archivo']['name']."')"
__________________
Manoloweb
  #3 (permalink)  
Antiguo 30/10/2003, 10:58
Avatar de El Menda  
Fecha de Ingreso: junio-2001
Ubicación: Jaén
Mensajes: 516
Antigüedad: 16 años, 5 meses
Puntos: 0
Gracias, pero me sigue sin funcionar :(
__________________
"No hay mujer fea sino copa de menos"
  #4 (permalink)  
Antiguo 30/10/2003, 11:08
 
Fecha de Ingreso: octubre-2003
Ubicación: Caracas
Mensajes: 16
Antigüedad: 14 años, 1 mes
Puntos: 0
$sql5 = "INSERT INTO trucoss (idn, total, 1) VALUES("'$_POST['idn']', '1','$_FILES['archivo']['name']'")";

Última edición por calvarado; 30/10/2003 a las 11:10
  #5 (permalink)  
Antiguo 30/10/2003, 15:22
Avatar de El Menda  
Fecha de Ingreso: junio-2001
Ubicación: Jaén
Mensajes: 516
Antigüedad: 16 años, 5 meses
Puntos: 0
Para lo q me ha puesto calvarado:
Parse error: parse error in c:\htdocs\public_html\canalskate\webmaster\trucos. php on line 136

Vamos q sigue dando error. Ya me estoy tirando de los pelos...
__________________
"No hay mujer fea sino copa de menos"
  #6 (permalink)  
Antiguo 30/10/2003, 15:39
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 5 meses
Puntos: 16
Hola,

Para ver el mensaje de error de MySQL debes usar mysql_error() (www.php.net/mysql_error):
Código PHP:
$result mysql_query($sql5) or die("Error $sql5 <br>MySQL dice: ".mysql_error()); 
Si se produce un error de MySQL, se finaliza el script con die() (www.php.net/die), mostrando el mensaje de error.

Tambien se puede usar mysql_error() con otras funciones mysql_*, como mysql_connect() o mysql_select_db().

Suerte.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #7 (permalink)  
Antiguo 30/10/2003, 16:09
Avatar de El Menda  
Fecha de Ingreso: junio-2001
Ubicación: Jaén
Mensajes: 516
Antigüedad: 16 años, 5 meses
Puntos: 0
Error INSERT INTO trucoss (idn, total, 1) VALUES('2', '1', '001.gif')
MySQL dice: You have an error in your SQL syntax near '1) VALUES('2', '1', '001.gif')' at line 1

Código PHP:
    $sql5 "INSERT INTO trucoss (idn, total, 1) VALUES('".$_POST['idn']."', '1', '".$_FILES['archivo']['name']."')";

    
$result mysql_query($sql5) or die("Error $sql5 <br>MySQL dice: ".mysql_error()); 
__________________
"No hay mujer fea sino copa de menos"
  #8 (permalink)  
Antiguo 30/10/2003, 16:15
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
trucoss (idn, total, 1)

Ese 1 no es un nombre de campo válido (o por no menos no es aconsejable tenerlo así ..)

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #9 (permalink)  
Antiguo 30/10/2003, 18:10
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 5 meses
Puntos: 16
Fijate como se lo indicas en el CREATE TABLE.

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #10 (permalink)  
Antiguo 31/10/2003, 06:29
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Bueno .. nºs con `1` si .. xD.

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
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 08:45.