Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

problema de sintaxis de dos select

Estas en el tema de problema de sintaxis de dos select en el foro de Mysql en Foros del Web. os dejo el codigo. son dos select que me dan este error: string 'historia' (length=8) string 'marta' (length=5) string '2' (length=1) boolean false error , ...
  #1 (permalink)  
Antiguo 13/03/2014, 14:47
 
Fecha de Ingreso: mayo-2009
Ubicación: Andalucia
Mensajes: 650
Antigüedad: 14 años, 11 meses
Puntos: 1
problema de sintaxis de dos select

os dejo el codigo. son dos select que me dan este error:
string 'historia' (length=8)

string 'marta' (length=5)

string '2' (length=1)

boolean false

error , nota no insertadaYou have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SELECT dni FROM usuario WHERE usuario ='marta' , SELECT idenicador FROM asignatu' at line 1

Código MySQL:
Ver original
  1. SELECT dni FROM usuario WHERE usuario ='{$alumno}'
  2.  
  3. SELECT identificador FROM asignatura WHERE nombre ='{$asignatura}'
  4.  
  5. INSERT into nota (dni,identificador, nota) values({$id_usuario},{$id_asignatura}, {$nota} )

Cita:
Editado: Código de programación no permitido en foros de Bases de Datos
no consigo ver el fallo

Última edición por gnzsoloyo; 13/03/2014 a las 16:37
  #2 (permalink)  
Antiguo 13/03/2014, 16:40
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: problema de sintaxis de dos select

En primer lugar, no se usan esos corchetes en MySQL. Para ningún uso. Así que a menos que sea parte de la sintaxis de PHP, está completamente mal. En especial el INSERT.
En segundo lugar, salvo que estés usando algún componente que interprete esos corchetes y variables como cadenas de texto, el INSERT generará siemrpe un error de sintaxis, a causa de esos corchetes, y también porque en el VALUES las cadenas de texto están quedando sin estar entre apóstrofos... lo que generará problemas.

Ten en cuenta que MySQL no interpreta PHP.
__________________
¿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 14/03/2014, 01:46
 
Fecha de Ingreso: mayo-2009
Ubicación: Andalucia
Mensajes: 650
Antigüedad: 14 años, 11 meses
Puntos: 1
Respuesta: problema de sintaxis de dos select

he modificado el codigo pero me da el mismo errror justamente el mismo
os dejo el codigo tal cual lo tengo ahora

Código MySQL:
Ver original
  1. SELECT dni FROM usuario WHERE usuario =  '". $alumno."'
  2.  
  3. SELECT identificador FROM asignatura WHERE nombre ='".$asignatura."'
  4.  
  5. INSERT into nota (dni,identificador, nota) values(".$id_usuario.",".$id_asignatura.", ".$nota." )

Cita:
Editado: Código de programación no permitido en foros de Bases de Datos

Última edición por gnzsoloyo; 14/03/2014 a las 03:43
  #4 (permalink)  
Antiguo 14/03/2014, 03:45
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: problema de sintaxis de dos select

No hay errores sintácticos manifiestos.
Es altamente probable en ese caso, que el problema esté en las variables de pHP, pero eso es OFF TOPIC en este foro.

Verifica la variables y cómo llegan.

No postees código de programación. Es OFF TOPIC y será eliminado sin previo aviso.
Lee las normas del Foro: Sólo SQL y temas de BBDD. Para programación están los otros foros.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: php, select, sintaxis, sql
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 11:56.