Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

turok

Problema com limit

Recommended Posts

Olá alguém sabe o que pode ser: tenho esse script do osCommerce que executa corretamente em um mysql 4.0 e já no 4.1 da um erro:

1064 - 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 ''-20, 20'' at line 1

o texto em aspas (''-20, 20'') é usado no limit do select mas não sei o que pode ser. Posso usar número negativo na Cláusula Limit?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Então o erro esta no seu Script. Creio eu que no lugar de -20 ele deveria esta mostrando 0.

 

Ficando algo como:

select * from tabela limit 0,20

Afim de criar uma páginação de resultados ele deve ter calculos, para ir montando os selects, tipo:

select * from tabela limit 20,20
select * from tabela limit 40,20
select * from tabela limit 60,20

Mas em algum lugar a lógica do seu script esta falhando, provavelmente ele esta interpretando um "RETORNAR PÁGINA", então ele deve estar decrementando 20 de 0... ou seja...

Compartilhar este post


Link para o post
Compartilhar em outros sites

tem razão era erro de lógica era quando não existia nenhum registro no banco dai dava erro então mudei para:

 

if( $query_num_rows > 0 )	  {		  $num_pages = ceil($query_num_rows / $max_rows_per_page);		  if ($current_page_number > $num_pages) 		  {			$current_page_number = $num_pages;		  }		  $offset = ($max_rows_per_page * ($current_page_number - 1));		  $sql_query .= " limit " . $offset . ", " . $max_rows_per_page;	  }	  else	  {		  $num_pages = 0;		$current_page_number = 1;		$sql_query .= " limit 0, " . $max_rows_per_page;	  }

valeu galera!!!!!!!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

hey turok também estou com esse problema...onde exatamente você fez essa mudança??? :o

Compartilhar este post


Link para o post
Compartilhar em outros sites

ops... acho que achei.. até agradeço por ninguém ter respondido... tá certo que fiquei dois dias procurando a solução mas a persistência (e minha cabeça dura) as vezes traz resultados..

 

pra quem tiver o mesmo problema: página: split_page_results.php, dentro da pasta includes/classes

 

subsituir as linhas de 33 à 38 para o código do TUROK aí embaixo..

se eu estiver errado por favor me corrijam.. pelo menos por enquanto aqui deu certo..

 

http://forum.imasters.com.br/public/style_emoticons/default/clap.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.