Jump to content
M3laniec

muitos produtos em varias paginas ....

Recommended Posts

M3laniec

Ola , boa tarde.

Estou a fazer uma loja virtual e estou com uma duvida .  quando vou "mostrar produtos" aparece uma lista extensa de produtos ,tendo muitos produtos o que normalmente se ve e que conforme vao aumentando os produtos vai aumentando em baixo as paginas( local em que vemos anterior e proxima) conforme acontece aqui conforme vai havendo mais respostas vai havendo mais paginas , a minha pergunta é como fazer isso qual o codigo para ser possivel isso ou como se faz pelo dreamweaver  para que apos 5 produtos apareçam mais paginas ??? 

Share this post


Link to post
Share on other sites
softklin

Se estás a fazer tudo pelo Dreamweaver, deves conseguir através destes artigos:

http://livedocs.adobe.com/en_US/Dreamweaver/9.0/WSc78c5058ca073340dcda9110b1f693f21-796f.html

http://livedocs.adobe.com/en_US/Dreamweaver/9.0/WSc78c5058ca073340dcda9110b1f693f21-7968.html

Na sua essência, na query à tua base de dados, defines os limites com o LIMIT, por exemplo:

SELECT * FROM produto WHERE nome LIKE '%brinquedo%' LIMIT 5, 10

De todos os resultados, isto vai dar-te a partir do 5º até ao 15º (a partir do 5, quero 10). Pesquisa por SQL LIMIT na ajuda do teu SGDB para mais informações se quiseres perceber como funciona internamente, ou se quiseres implementar de forma manual.


Nick antigo: softclean | Tens um projeto? | Wiki P@P

Ajuda a comunidade! Se encontrares algo de errado, usa a opção "Denunciar" por baixo de cada post.

Share this post


Link to post
Share on other sites
M3laniec

Obrigado eu vou tentar ver isso mesmo , voce ja ajudou muito, é que eu nem sabia como procurar este tipo de codigo  😳

Obrigado se tiver algum problema depois eu falo. :D:thumbsup:

Share this post


Link to post
Share on other sites
M3laniec

Hummm eu fiz o que me disseste mas nao é isso que pretendo , se eu ponho limit 0 - 5 por exemplo so me mostra os primeiros 5 produtos e nao mostra em baixo diria a opçao seguinte para ver o resto dos produtos...

imagina aki conforme se vai escrevendo mais comentarios vao aumentando as paginas em baixo certo??? era isso que eu queria :down:

Share this post


Link to post
Share on other sites
softklin

A query por si apenas vai afectar o conjunto de resultados e não vai colocar os números de páginas no teu HTML. Vou tentar explicar mais detalhadamente:

como viste, aquela query limita o teu conjunto de resultados. A intenção de separar o conjunto de resultados total entre diversas páginas é apresentar uma certa quantidade de registos de cada vez. Por exemplo, se quiseres fazer a paginação com 15 resultados em cada página, a query para a tua primeira página fica:

SELECT * FROM produto WHERE nome LIKE '%brinquedo%' LIMIT 0, 15

Agora, para a tua segunda página vai ser diferente. Já foram apresentados na primeira página os primeiros 15 resultados, portanto vamos começar a apresentar para a frente disso. Logo, a query vai ser:

SELECT * FROM produto WHERE nome LIKE '%brinquedo%' LIMIT 15, 15

Para a terceira página será:

SELECT * FROM produto WHERE nome LIKE '%brinquedo%' LIMIT 30, 15

e sempre assim.

Como já existem n tutoriais sobre isso, deixo-te aqui um que contém um código razoável para o pretendido:

http://php.about.com/od/phpwithmysql/ss/php_pagination.htm

Também podes pesquisar por 'PHP pagination tutorial' ou similar.

EDIT: resolvi também criar um pequeno artigo sobre o assunto para a wiki, no caso estares interessado, passa por lá, tem o código PHP necessário e exemplos:

http://www.wiki.portugal-a-programar.org/dev_web:php:sistema_de_paginacao_em_php


Nick antigo: softclean | Tens um projeto? | Wiki P@P

Ajuda a comunidade! Se encontrares algo de errado, usa a opção "Denunciar" por baixo de cada post.

Share this post


Link to post
Share on other sites
M3laniec

ok vou ver isso mas diz-me so uma coisa eu vou ter de criar uma pagina para cada conjunto ?? akilo nao cria automaticamente???

Share this post


Link to post
Share on other sites
softklin

Não é preciso, é criado automaticamente. O script de PHP lê do array $_GET qual a página de deve mostrar (conjunto de elementos). Por exemplo:

script.php?pagina=4

script.php?pagina=1

são o mesmo script, mas vão mostrar duas páginas diferentes do teu conjunto de resultados. Eu adaptei e testei com sucesso o código da Wiki, em principio deve ser só mudar a parte para fazer a query SQL à tua tabela e aligação à base de dados.

NOTA: se não disseres qual o número da página, o script apresenta sempre a primeira (1).


Nick antigo: softclean | Tens um projeto? | Wiki P@P

Ajuda a comunidade! Se encontrares algo de errado, usa a opção "Denunciar" por baixo de cada post.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.