Logo Hardware.com.br
WilliamFoose
WilliamFoose Super Participante Registrado
601 Mensagens 1 Curtida

Ajuda na function norepeat

#1 Por WilliamFoose 04/05/2008 - 10:32
Bom dia pessoal.

Bom. Fis uma função aqui para não mostrar nomes de sites repetidos numa pagina.

Ele serve para que quando um site esteja repetido. Ele não mostre o nome e sim uma setinha para cima =D.

Ae botei o Dreamweaver para aquecer xD.

Tentei de um jeito de não deu. Tentei de outro e também não deu.

Ae fis pelo id. O id do site.

Então

Tem o script da pagina.

que é esse.

while($ver=mysql_fetch_array($ddl->get)) {
echo $ver[nomesite];
}


Então como fis uma função para ele, ele ficou assim.

while($ver=mysql_fetch_array($ddl->get)) {
$ddl->norepeat($ver['sname'], $ver['id'], $ver['siteurl']);
}



Na função coloquei o sequinte codigo.

function norepeat($sname, $id, $surl) {
$dls[srate] = mysql_num_rows(mysql_query("SELECT * FROM "
.$this->mysql_tb_dl.
" WHERE sname='"
.$sname.
"'"));
$cid = $id;
$ccid = $cid+1;
$get = mysql_query("SELECT * FROM "
.$this->mysql_tb_dl.
" WHERE id="
.$ccid.
"");
while($row = mysql_fetch_array($get)) {
$nomeantes = $row[sname];
}
if ($sname != $nomeantes) {
echo " echo $this->user_rate($dls[srate]);
echo "\">";
echo $this->user_rate($dls[srate]);
echo " echo $surl;
echo "\">";
echo $sname;
echo "";
} else {
echo "";
}
}


Bom. O Codigo

$dls[srate] = mysql_num_rows(mysql_query("SELECT * FROM "
.$this->mysql_tb_dl.
" WHERE sname='"
.$sname.
"'"));


Serve para mostrar o rate do site. Então não tem função no norepeat.

Como lá encima add o id do site fis pele pegar um id +1 para ver se é repetido aqui

$cid = $id;
$ccid = $cid+1;

tem o id que muda para cid, cid vai para cid+1 para o id almentar exemplo se for 12 vai para 13 e ele
muda para ccid.

Então coloco ele para pegar no banco de dados.

$get = mysql_query("SELECT * FROM "
.$this->mysql_tb_dl.
" WHERE id="
.$ccid.
"");

Então ae ele pega o ID + 1 e vai para

while($row = mysql_fetch_array($get)) {
$nomeantes = $row[sname];
}

Pega o nome do site que é +1 do que aquele.
e muda para $nomeantes

ae ja faço a função

if ($sname != $nomeantes) {
echo " echo $this->user_rate($dls[srate]);
echo "\">";
echo $this->user_rate($dls[srate]);
echo " echo $surl;
echo "\">";
echo $sname;
echo "";
} else {
echo "";
}

ae se for repetido ele mostra que pelo CSS tá para mostrar a setinha =D.

e se não for repetido ele mostra o codigo normal 5Google.


Bom. Ele funciona perfeitamente, esse e o problema.

Ele pega a informação de um ID que está a mais do que ele.

Então quando vou na paginação e mudo para a pagina 2 por exemplo.

As setinhas para cima continua porque na pagina 1 tem o nome do site lá.

por exemplo fika assim.

google

prev.gif

prev.gif

prev.gif

prev.gif

prev.gif

Ae quando mudo para a pagina 2.

As setinhas continuam assim.

prev.gif

prev.gif

prev.gif

prev.gif

prev.gif

Microsoft

prev.gif

prev.gif

prev.gif

Até mudar para outro site.

Então a ajuda que estou precisando e para meu ajudar a consertar isso.





Eu percebi que pelo mysql não tem jeito porque ele vai pegar resultados de outra pagina. Tipo se eu tiver no 2 ele pegará do 1 também.

Um jeito também que daria. Era poder saber qual e o resultado sequinte. O anterior.

Só que não tenho ideia de como fazer isso. Só com numeros =D.

Se alquem poder dar uma ajudinha. :thumbsup:
© 1999-2024 Hardware.com.br. Todos os direitos reservados.
Imagem do Modal