Avatar billede Calle5463 Forsker
10. maj 2011 - 14:53 Der er 6 kommentarer og
1 løsning

Frem og tilbage

Jeg har nogle sider jeg vil kunne navigere frem og tilbage i - det ser nogenlunde sådan her ud

Sider: side-0.php, side-1.php, side-2.php


<html>
<script>
function frem() {
  $nr=$nr+1;
}
function tilbage() {
  $nr=$nr-1;
}
</script>
<body>

<?php
  if($nr<0){ $nr=0; }
  if($nr>2){ $nr=2; }
  include "side-$nr.php";
?>
<input type="submit" value="Tilbage" onClick="tilbage()">
<input type="submit" value="Frem" onClick="frem()">


Nulstiller den $nr hver gang jeg trykker på en knap (hvordan undgår jeg det?)
Avatar billede keysersoze Ekspert
10. maj 2011 - 15:49 #1
Husk på at javascript fungerer på klienten og PHP på serveren - alt serverside-kode køres før der sendes noget til klienten og PHP kan ikke læse variabler fra javascript. Så der lyder mere som om du vha din PHP skal udregne hvad linket til henholdsvis frem og tilbage skal være idet siden skal vises.
Avatar billede Calle5463 Forsker
11. maj 2011 - 10:20 #2
Har selv fået det til at virke
Avatar billede keysersoze Ekspert
11. maj 2011 - 10:38 #3
Hvad har du så gjort?
Avatar billede Calle5463 Forsker
11. maj 2011 - 10:54 #4
Jeg har navngivet mine submit-knapper med henholdsvis "frem" og "tilbage" og lagt noget PHP i starten.
Og det kan så sandsynligvis gøres meget smartere, men jeg valgte at gemme sidenr i min sql-tabel. Det starter jeg med at læse og ved så hvilken side jeg sidst var på. Hvis der er trykket "frem" lægger jeg en til sidetallet og updater min tabel.
Avatar billede keysersoze Ekspert
11. maj 2011 - 11:12 #5
altså mere eller mindre en opdatering i forhold til mit forslag?

Hvad gør du så hvis der er flere brugere inde på siden? Så vil de vel odpatere hinandens sidetal?
Avatar billede Calle5463 Forsker
11. maj 2011 - 11:19 #6
Det har jeg styr på (håber jeg :-) ) - de skal være oprettet
Avatar billede keysersoze Ekspert
11. maj 2011 - 11:34 #7
Hvis du har styr på det benytter du formentlig en session - så kan du vel lige så godt gemme sidenummer i en session så du sparer overhead til databasen. Det vil dog i mine øjne stadig være spild at gemme noget overhovedet - enten bør du aflæse sidetal fra den side der foretager forespørgslen eller også styre frem og tilbage værdierne i det du danner siden. Simpelthen pga performance.

Men anyway - det vil jeg ikke blande mig i, jeg er glad for at du kunne bruge mine input og alligevel lukke spm til egen fordel.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester