Ir para conteúdo
Fórum Script Brasil
  • 0

Imagens No Php, Ajuda


andre mata

Pergunta

ola boa noite, estou fazendo um site de revenda de veiculos e preciso colocar na paginal principal veiculos em destaques.Mas tenho mais de 250 veiculos em destaque e na pagina só cabe 25 por vez, como faço para mostrar todos contando de 25 em 25 dando refresh na página.cada refresh mostra 25 e assim aleatóriamente acabnado no 250 e voltando no 1.desde já agradeço.

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

Se a sua idéia é mostrar aletatoriamente você pode usar ORDER BY RAND(), assim ele vai sortear os resultados e os veículos vão vir aleatoriamente, mas isso vai trazer resultados repetidos... pois é sorteio, você pode utilizar sessões para guardar o que já foi sorteados e assim evitar mostrar repetidos... eu postei a um tempo atrás um exemplo de sorteio aleatório em que se evitava repetições... procure entre os meus posts sobre isso...

Link para o comentário
Compartilhar em outros sites

  • 0

creio que para evitar a repeticao dos sorteios poderia utilizar outra forma, sugiro o seguinte:

coloque as urls dos links das imagens num campo em uma tabela. Crie outro campo na tabela, um campo do tipo logico (true or false). Voce tem 250 imagens, certo? Então terá 250 registros com as respectivas urls das imagens.

Então ao selecionar os registros voce dará a seguinte instrucao sql:

$sql = "Select * from TabelaImagens where ImagemExibida = false limit 0,24";

Em seguida voce dá um update na tabela para alterar a condicao false para true das imagens que foram exibidas, assim:

$sql = "update TabelaImagens set ImagemExibida = true where ImagemExibida = false limit 0,24;

Então quando a página for acessada novamente, repetirá a primeira instrucao sql acima que pegará outras 25 imagens que contem a condicao false.

Então quando todas forem exibidas logicamente todas as imagens estarão com o campo logico ImagemExibida com a condição false. Então aqui, agora que já entendeu o esquema, na realidade após a primeira instrucao sql acima (quando voce seleciona as 25 imagens) voce deverá inserir o seguinte codigo:

if(mysql_num_rows($Res) == 0){ // não encontrou nenhum registro com a condicao false, pois todas as imagens já foram exibidas

$sql = "update TabelaImagens set ImagemExibida = false"; // altera todas as imagens voltam a ter condicao false novamente.

$sql = "Select * from TabelaImagens where ImagemExibida = false limit 0,24";//necessário selecionar novamente.

}

Bem, resumindo, o codigo completo em ordem ficaria assim:

$sql = "Select * from TabelaImagens where ImagemExibida = false limit 0,24";

$Res = mysql_db_query("$BaseDados", "$sql", $conex);

if(mysql_num_rows($Res) == 0){

sql = "update TabelaImagens set ImagemExibida = false";

$Res = mysql_db_query("$BaseDados", "$sql", $conex);

$sql = "Select * from TabelaImagens where ImagemExibida = false limit 0,24";

$Res = mysql_db_query("$BaseDados", "$sql", $conex);

}

$sql = "update TabelaImagens set ImagemExibida = true where ImagemExibida = false limit 0,24";

$Res = mysql_db_query("$BaseDados", "$sql", $conex);

Talvez no codigo acima exista algum erro de sintaxe, mas o importante é a idéia que lhe passei...

Eu já utilizei isto, não é 100% funcional, porque existe aquela historia do usuario fechar o navegador antes da página ser executada, e outros problemas semelhantes.

Espero ter ajudado...

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,7k
×
×
  • Criar Novo...