login  Naam:   Wachtwoord: 
Registreer je!
 Forum

hoeveelheid uit DB

Offline compudoc - 15/10/2007 09:12
Avatar van compudocPHP beginner ik zit met een klein probleempje.
Ik weet dat je met LIMIT 5, bijvoorbeeld de eerste 5 uit een database kan halen. Maar nou wil ik bijvoorbeeld dat als in de URL staat: ?ftpage=1 dat dan de eerste 15 hits uit de database worden opgehaald.
Als er nou staat ?ftpage=2 dan moet vanaf hit 16 t/m 30 uit de database worden gelezen, enzovoort...

Hoe kan ik dit doen?
alvast bedankt.

5 antwoorden

Gesponsorde links
Offline ikki007 - 15/10/2007 09:15 (laatste wijziging 15/10/2007 09:18)
Avatar van ikki007 Gouden medailleGouden medaille

PHP ver gevorderde
Even snel in mekaar gedraait:

  1. <?php
  2.  
  3. $max = 15; // het aantal dat die eruit moet halen
  4.  
  5. $page = (ctype_digit($_GET['ftpage']) ? $_GET['ftpage'] : 1);
  6.  
  7. $limit1 = $page*$max-$max;
  8.  
  9. $select = mysql_query("SELECT * FROM db LIMIT ".$limit1.", ".$max.""); // de uiteindelijke query
  10.  
  11. if(@mysql_num_rows($select) > 0)
  12. {
  13. // hier kan je de boel gaan uitlezen
  14. }
  15. else
  16. {
  17. // geen resultaten
  18. }
  19.  
  20. ?>


Kan enkele foutjes bevatten  
Offline compudoc - 15/10/2007 09:21
Avatar van compudoc PHP beginner bedankt, ik zal eens gaan proberen...

maar waar is dit voor, wat doet het?
  1. $page = (ctype_digit($_GET['ftpage']) ? $_GET['ftpage'] : 1);
Offline ikki007 - 15/10/2007 09:25
Avatar van ikki007 Gouden medailleGouden medaille

PHP ver gevorderde
Dat is een makkelijke if/else constructie.
Dat is hetzelfde als dit:


  1. <?php
  2.  
  3. if(ctype_digit($_GET['ftpage']))
  4. {
  5. $page = $_GET['ftpage'];
  6. }
  7. else
  8. {
  9. $page = 1;
  10. }
  11.  
  12. ?>
Offline compudoc - 15/10/2007 09:35
Avatar van compudoc PHP beginner heel erg bedankt, het scriptje werkt ook perfect!!!  
Offline Rens - 15/10/2007 09:41 (laatste wijziging 15/10/2007 12:28)
Avatar van Rens Gouden medaille

Crew algemeen
Ikzelf zou er ook nog PHP.net: isset bijzetten, anders krijg je een melding dat $_GET['ftpage'] niet bestaat o.i.d.
Dus dan krijg je zoiets:
  1. if(IsSet($_GET['ftpage']) && cType_Digit($_GET['ftpage']))
  2. {
  3. $page = $_GET['ftpage'];
  4. } else
  5. {
  6. $page = 1;
  7. }

Of, in de verkorte syntax:
  1. $page = ((IsSet($_GET['ftpage']) && cType_Digit($_GET['fpage'])) ? $_GET['ftpage'] : 0);
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.225s