29. august 2005 - 18:00Der er
8 kommentarer og 1 løsning
form og paging
Hej.. Jeg har en form der sender til en ny side med et paging script, det virker fint, altså kun på siden 1 (med paging)! :-( Når jeg vil se side 2,3,4 etc så er resultatet blankt, fordi den ikke har den variabel jeg sender 1.gang fra formen... nå men hvordan holder jeg på variablen på siden med paging ? så jeg kan se de andre sider ?
En løsning vil være, at skifte din form method ud med GET i stedet for POST. Så får du smidt variablen i adresselinien, og så skal du "bare" overføre den til også at være i adresselinien på de efterfølgende sider.
Du får den ikke direkte til at bruge i adresselinien uden videre, det skal du selv sørge for.
Et eller andet sted, må du definere filnavnet på siden, som skal åbne når brugeren trykker næste, f.eks. $_SERVER['PHP_SELF'], der tilføjer du så, så det bliver: $_SERVER['PHP_SELF']."?variabelnavn=".$_GET['variabelnavn'];
Nu har jeg lavet formen på side 1 om til GET og før fik jeg visning på denne side, men ikke nu, hvad sker der ?
/* Instantiate class */ require_once("class.pager.php"); $p = new Pager;
/* Show many results per page? */ $limit = 10;
/* Find the start depending on $_GET['page'] (declared if it's null) */ $start = $p->findStart($limit);
/* Find the number of rows returned from a query; Note: Do NOT use a LIMIT clause in this query */ $count = mysql_num_rows(mysql_query("SELECT * FROM butikker where '$_GET[sogeord]' <> '' and sb1_butiksnavn like '%$_GET[sogeord]%' OR '$_GET[postnr]' <> '' and sb1_postnr like '%$_GET[postnr]%' OR '$_GET[postby]' <> '' and sb1_postby like '%$_GET[postby]%' OR '$_GET[telefon]' <> '' and sb1_telefon like '%$_GET[telefon]%' "));
/* Find the number of pages based on $count and $limit */ $pages = $p->findPages($count, $limit);
/* Now we use the LIMIT clause to grab a range of rows */ $result = mysql_query("SELECT * FROM butikker where '$_GET[sogeord]' <> '' and sb1_butiksnavn like '%$_GET[sogeord]%' OR '$_GET[postnr]' <> '' and sb1_postnr like '%$_GET[postnr]%' OR '$_GET[postby]' <> '' and sb1_postby like '%$_GET[postby]%' OR '$_GET[telefon]' <> '' and sb1_telefon like '%$_GET[telefon]%' LIMIT ".$start.", ".$limit);
/* Now get the page list and echo it */ $pagelist = $p->pageList($_GET['page'], $pages); /* Or you can use a simple "Previous | Next" listing if you don't want the numeric page listing */ //$next_prev = $p->nextPrev($_GET['page'], $pages); //echo $next_prev;
/* From here you can do whatever you want with the data from the $result link. */
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.