Foros del Web

Foros del Web (http://www.forosdelweb.com/)
-   Mysql (http://www.forosdelweb.com/f86/)
-   -   Intentar usar como parametro un REQUEST en LIMIT (http://www.forosdelweb.com/f86/intentar-usar-como-parametro-request-limit-394289/)

faco84 16/05/2006 21:41

Intentar usar como parametro un REQUEST en LIMIT
 
Hola!
Al intentar usar como parametro recibido por un "$_REQUEST" en LIMIT, me da error de syntaxis.
El script es el siguiente:

...
Código PHP:

$offset $_REQUEST['offset'];
       
$query="SELECT movie_name, movie_year
       FROM movie
       ORDER BY movie_name
       LIMIT $offset,1"


...

*ERROR: "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 '1' ".

Espero que puedan ayudarme, gracias!. :pensando:

Notwen 17/05/2006 04:58

¿Verificaste que el valor de la variable sea correcto?. Yo te recomiendo que hagas un "echo $offset" para ver el valor de la varible.
Saludos.

deadlykyo 17/05/2006 07:37

Mira si en la consulta que estas ejecutando, $offset siempre tiene un valor
Código PHP:

//
$offset $_REQUEST['offset'];
       
$query="SELECT movie_name, movie_year
       FROM movie
       ORDER BY movie_name
       LIMIT $offset,1"

echo 
"<br>consulta: ".$query;

//o si no puedes intentar hacer esto
$offset = isset($_REQUEST['offset'])?$_REQUEST['offset']:0

saludos... cya

faco84 17/05/2006 10:53

problema
 
Sigo sin tener solucion al problema.
Además, no logro ver un valor en la variable $offset aun luego de haber usado "isset";
Código PHP:

$offest = isset($_REQUEST['offest'])? $_REQUEST['offest']:0;

                 echo 
$offset;
                 echo 
"<br>";

                
$query="SELECT movie_name, movie_year
                FROM movie
                ORDER BY movie_name
                LIMIT $offset ,1"


ERROR:
"en blanco"
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 '1' at line 4

faco84 17/05/2006 10:56

Lol!!
 
DISCULPEN LAS MOLESTIAS!!. PERO AL PARECER NADIE SE HABIA DADO CUENTA NI TAMPOCO YO!!.
El problema radicaba en el nombre de la variable!!! :borracho: La variable que llamaba en el LIMIT no era la misma que recibia del REQUEST LOL!! "offest != offset" :patada:
Mil disculpas a todos, gracias de todas maneras por intentar ayudarme :arriba:

deadlykyo 17/05/2006 10:58

jejejeje, no te preocupes, suele ocurrir, saludos... cya

faco84 17/05/2006 11:03

Duda respecto al uso de LIMIT
 
Al ver que LIMIT no respondia frente a una variable no inicializada, quiere decir que para usar una variable como parametro en LIMIT, la variable que usaremos debe tener estar inicializada con algun valor??, ya que pense que si no tenia nada no deberia mostrar nada y asi deberia continuar y mostrar el menu que tengo mas abajo del query y eso.

Notwen 17/05/2006 11:47

En realidad, las variables de php se usan para "construir" una consulta que despues vas a enviar a una base de datos. Mysql no sabe si esa consulta fue "construida" con valores de variables o de alguna otra forma. El punto es que la consulta debe tener la sintaxis correcta, sino mysql devolvera error. En tu caso, al no inicializar la variable, le estarias enviando a mysql una consulta como:

SELECT movie_name, movie_year FROM movie ORDER BY movie_name LIMIT ,1

que tiene un error de sintaxis porque le falta el primer parametro del LIMIT
Ahora, si en tu código php hubieras tenido:

Código PHP:

<?
 $query
="SELECT movie_name, movie_year 
                FROM movie 
                ORDER BY movie_name 
                LIMIT ,1"
?>

es decir, no utilizas ninguna variable para construir la consulta. Sin embargo, mysql te va a dar el mismo error.
Independientemente de como "armes" tu consulta, tenés que asegurarte de que este bien formada antes de que sea ejecutada.
Saludos.


La zona horaria es GMT -6. Ahora son las 01:37.

Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.