O código que segue é pura gambiarra. Eu tenho um pedido de compra que tem 300 produtos. Eu acho uma besteira colocar todos os produtos na tela do celular, ainda mais que eu ainda não sei separar o mundo do servidor e o mundo do cliente.
Então eu decidi limitar apenas 15 produtos, o tempo de resposta ficou bem melhor.
Para avançar 15 produtos de cada vez, isso foi fácil. O útimo item da lista eu chamei de indicador.
O problema é quando o usuário quiser voltar na página anterior.
A solução que eu encontrei é bem besta, mas funciona. Eu uso o mesmo indicador, mas peço para o MySQL fazer uma nova consulta baseado no indicador, fazendo uma lista decrescente de produtos. Peço para o PHP contar 29 registros, e utilizar o vigésimo nono como o novo indicador. A solução é bem besta, mas eu não tenho a menor ideia de como ir até o 29o. registro sem ser contando na unha.
A seguir a listagem da minha gambiarra:
astudy2.php
--------------
<script>function voltar(indicador){inpg.name="voltar";inpg.value=indicador;frmg.submit()}function avancar(indicador){inpg.name="avancar";inpg.value=indicador;frmg.submit()}function topo(){inpg.name="topo";frmg.submit()}</script><formid=frmgmethod=post><inputid=inpgtype=hidden></form><?php
$mysqli=new mysqli("localhost","root","","diario");if(isset($_POST['topo'])){$codp=24007;$indicador="";}if(isset($_POST['avancar'])){$codp=24007;$indicador=$_POST['avancar'];}else{$codp=24007;$indicador="";}if(isset($_POST['voltar'])){
$codp=24007;
$indicador=$_POST['voltar'];
$query=$mysqli->query("select * from vw_compra where codp=$codp and prod<='$indicador' order by prod desc");for($i=1;$i<=29;$i++){$row=$query->fetch_assoc();}
$indicador=$row['prod'];}
$query=$mysqli->query("select * from vw_compra where codp=$codp and prod>='$indicador' order by prod limit 15");
echo "<table><tr><th><a onclick=voltar(compradiv.innerHTML)>Codigo ^</a><th><a onclick=avancar(compradiv.innerHTML)>Descriçaõ v</a>";while($row=$query->fetch_assoc()){
$codprod = $row['codprod'];
$prod = $row['prod'];
echo "<tr><td>$codprod<td>$prod";}
echo "<tr><td><td><b><a onclick=topo()>Ir para o topo</a></table>";
echo "<br>Indicador atual:<div id=compradiv>$prod</div>";
Pergunta
Frank K Hosaka
O código que segue é pura gambiarra. Eu tenho um pedido de compra que tem 300 produtos. Eu acho uma besteira colocar todos os produtos na tela do celular, ainda mais que eu ainda não sei separar o mundo do servidor e o mundo do cliente.
Então eu decidi limitar apenas 15 produtos, o tempo de resposta ficou bem melhor.
Para avançar 15 produtos de cada vez, isso foi fácil. O útimo item da lista eu chamei de indicador.
O problema é quando o usuário quiser voltar na página anterior.
A solução que eu encontrei é bem besta, mas funciona. Eu uso o mesmo indicador, mas peço para o MySQL fazer uma nova consulta baseado no indicador, fazendo uma lista decrescente de produtos. Peço para o PHP contar 29 registros, e utilizar o vigésimo nono como o novo indicador. A solução é bem besta, mas eu não tenho a menor ideia de como ir até o 29o. registro sem ser contando na unha.
A seguir a listagem da minha gambiarra:
Link para o comentário
Compartilhar em outros sites
0 respostass a esta questão
Posts Recomendados
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.