Problema con consulta sql en php

Hola, estoy realizando una paginación con php y mysql y, al hacer una consulta me aparece este problema:
Parse error: syntax error, unexpected t_constant_encapsed_string in C:\AppServ\www\musica\musica\paginacion_disco.php on line 56
la consulta a la que se refiere este error es la siguiente:
$resultados = mysql_query("Select * from disco where cantante=""".$_request['id']" limit $inicio, $registros");
Supongo que sera un problema de comillas, pero no sé cómo solucionarlo.
Muchas gracias de antemano.
Respuesta
1
Te falta un . entre ['id'] y " limit
Aparte, las triples comillas seguramente dan también problemas.
Prueba $resultados = mysql_query('Select * from disco where cantante="'.$_request['id'] . "\" limit $inicio, $registros");
No obstante, es inseguro introducir así datos de la petición. Usa $resultados = mysql_query('Select * from disco where cantante="'. mysql_real_escape_string($_request['id']) . "\" limit $inicio, $registros");
Hola, muchas gracias por la contestación.
Con la ayuda que me has pasado, ya no me da error, pero, donde sé que hay datos, no me saca nada y donde no hay datos que mostrar me dice (sin resultados).
Debes tener algún fallo en el resto del código.
Hola,
si no es mucha molestia, ¿te podría mandar el código y me lo miras? Es que por más vueltas que le doy no le encuentro el fallo...
Muchas gracias
Supongo que podría echarle un vistazo

1 respuesta más de otro experto

Respuesta
Si que hay un problema con las comillas
Si usas comillas dobles para la cadena "
Las comillas dobles que utilices dentro de la cadena debes escaparlas \"
Para el código que has puesto:
Puedes asignar antes el valor a una variable:
$id=tiny_mce_markerrequest['id'];
si $id es entero no hace falta que uses comillas:
$resultados = mysql_query("Select * from disco where cantante=$id limit $inicio, $registros");
si $id es texto pon comillas simples
$resultados = mysql_query("Select * from disco where cantante='$id' limit $inicio, $registros");
Antes que nada, muchas gracias por la rápida contestación.
¿qué significa eso de tiny_mce_marrequest['id'];
Me sigue dando error, pero ahora en esa linea
Eso no lo he puesto yo, ha salido del editor de todoexpertos,
ahí ponía: $id=$_request['id'];

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas