Foros del Web » Programando para Internet » PHP »

Problema, ¿Error de sintaxis?

Estas en el tema de Problema, ¿Error de sintaxis? en el foro de PHP en Foros del Web. Hola estoy teniendo problemas en una consulta, pero no veo el error. La consulta es: Cita: $bbdd = mysql_connect($host, $usuario, $password) or die ("Could not ...
  #1 (permalink)  
Antiguo 03/06/2009, 10:05
 
Fecha de Ingreso: junio-2008
Mensajes: 56
Antigüedad: 11 años, 8 meses
Puntos: 1
Problema, ¿Error de sintaxis?

Hola estoy teniendo problemas en una consulta, pero no veo el error.

La consulta es:

Cita:
$bbdd = mysql_connect($host, $usuario, $password) or die ("Could not connect: " . mysql_error()); //conectamos con base de datos.
$tablausuario = mysql_select_db($bd, $bbdd) or die(mysql_error());//seleccionamos base de datos fichaje de nuestra base de datos.

$compruebo_usuario=' SELECT * FROM usuarios WHERE user="'.$user_nuevo.'" AND correo="'.$correo_nuevo.'" AND perfil="" ';

echo "consulta:".$compruebo_usuario;

$cons_comprobacion=mysql_query($compruebo_usuario, $bbdd) or (mysql_error());

$alta_usuario=mysql_num_rows($cons_comprobacion) or (mysql_error());
Imprimo la consulta (ejemplo):

Cita:
consulta: SELECT * FROM usuarios WHERE user="invento2" AND correo="[email protected]" AND perfil=""
Y me da este error:

Cita:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'correo="[email protected]"' at line 1
Pero no encuentro el error de sintaxis que me dice, ¿me podeis ayudar?

Gracias.
  #2 (permalink)  
Antiguo 03/06/2009, 10:37
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.323
Antigüedad: 12 años, 2 meses
Puntos: 2654
Respuesta: Problema, ¿Error de sintaxis?

Prueba primero pon user entre acentos agudos (`), porque USER es una palabra reservada y puede estar creando un conflicto.

Leer esto con atención: 9.6. Tratamiento de palabras reservadas en MySQL

Después veremos si existe otro problema.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 03/06/2009, 10:41
 
Fecha de Ingreso: junio-2008
Mensajes: 56
Antigüedad: 11 años, 8 meses
Puntos: 1
Respuesta: Problema, ¿Error de sintaxis?

Nada, sigo igual con los errores.

Ahora lo tengo:

Cita:
$compruebo_user='SELECT user FROM usuarios WHERE `user`="'.$user_nuevo.'" AND $correo_nuevo="'.$correo_nuevo.'" AND perfil="" ';

echo "consulta:".$compruebo_user;

$cons_comprobacion=mysql_query($compruebo_user,$bb dd) or (mysql_error());

$alta_usuario=mysql_num_rows($cons_comprobacion) or (mysql_error());
De todas formas tengo más consultas parecidas a esta y nunca me han dado problema con "user".

Me da el siguiente error:

Cita:
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in C:\wamp\www\alfredo\fichaje_desarrollo\alta_usuari o.php on line 61
Ya no sé que más probar, ni qué hacer. Gracias.
  #4 (permalink)  
Antiguo 03/06/2009, 16:38
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 11 años
Puntos: 360
Respuesta: Problema, ¿Error de sintaxis?

Pruebala así:

Código sql:
Ver original
  1. $compruebo_usuario="SELECT * FROM usuarios WHERE user='".$user_nuevo."' AND correo='".$correo_nuevo."' AND perfil='' ";

Un saludo
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #5 (permalink)  
Antiguo 04/06/2009, 07:37
 
Fecha de Ingreso: junio-2008
Mensajes: 56
Antigüedad: 11 años, 8 meses
Puntos: 1
Respuesta: Problema, ¿Error de sintaxis?

Ya lo tengo como me habeis dicho en el ultimo post:

Cita:
$compruebo_user="SELECT * FROM usuarios WHERE user='".$user_nuevo."' AND correo='".$correo_nuevo."' AND perfil='' ";
echo "consulta:".$compruebo_user;

$cons_comprobacion=mysql_query($compruebo_user,$bb dd) or (mysql_error());

$alta_usuario=mysql_num_rows($cons_comprobacion) or (mysql_error());
Pero me sale el siguiente error:

Cita:
consulta:SELECT * FROM usuarios WHERE user='otro' AND correo='[email protected]' AND perfil='' You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'correo="[email protected]"' at line 1
Si el caso es que he echo muchisimas consultas muy parecidas como lo tenía la principio y nunca me ha dado ningún problema...

Gracias.
  #6 (permalink)  
Antiguo 04/06/2009, 07:42
 
Fecha de Ingreso: junio-2008
Mensajes: 56
Antigüedad: 11 años, 8 meses
Puntos: 1
Respuesta: Problema, ¿Error de sintaxis?

El caso es que cuando ejecuto directamente la consulta mysql sobre la base de datos SI FUNCIONA:

Cita:
SELECT * FROM usuarios WHERE `user`="otro" AND correo="[email protected]" AND perfil=""
Me estoy volviendo ya loco con esta consulta...
  #7 (permalink)  
Antiguo 04/06/2009, 08:13
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 11 años
Puntos: 360
Respuesta: Problema, ¿Error de sintaxis?

Si funciuona en la base de datos, ya tienes un problema con php y no con mysql.

Pregunta en ese foro. Foro PHP

Un saludo.
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #8 (permalink)  
Antiguo 05/06/2009, 13:33
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 13 años, 8 meses
Puntos: 2135
Respuesta: Problema, ¿Error de sintaxis?

Tema trasladado desde Bases de Datos.

http://www.forosdelweb.com/f21/funci...-datos-413499/
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 17:52.