login  Naam:   Wachtwoord: 
Registreer je!
 Forum

plaatje laten zien met cookies

Offline riekele - 09/01/2005 20:59
Avatar van riekelePHP beginner hallo,
een tijdje geleden had ik hier een topic gemaakt hoe je een random plaatje kan laten zien en dat die een dag blijft staan, en toen kree ik een reactie dat het misscien wel met cookies kon. Dit heb ik even geprobeert alleen nu heb ik een probleem hij laat geen plaatje zien. dit is mijn code:
  1. <?php
  2. $koekje = rand(1,7);
  3. if (isset($_COOKIE['plaatje1'])){?>
  4. <img src="http://home.tiscali.nl/starfighter/rozemuts2/pics/plaatje1.jpg"><?}
  5. elseif (isset($_COOKIE['plaatje2'])){?>
  6. <img src="http://home.tiscali.nl/starfighter/rozemuts2/pics/plaatje2.jpg"><?}
  7. elseif (isset($_COOKIE['plaatje3'])){?>
  8. <img src="http://home.tiscali.nl/starfighter/rozemuts2/pics/plaatje3.jpg"><?}
  9. elseif (isset($_COOKIE['plaatje4'])){?>
  10. <img src="http://home.tiscali.nl/starfighter/rozemuts2/pics/plaatje4.jpg"><?}
  11. elseif (isset($_COOKIE['plaatje5'])){?>
  12. <img src="http://home.tiscali.nl/starfighter/rozemuts2/pics/plaatje5.jpg"><?}
  13. elseif (isset($_COOKIE['plaatje6'])){?>
  14. <img src="http://home.tiscali.nl/starfighter/rozemuts2/pics/plaatje6.jpg"><?}
  15. elseif (isset($_COOKIE['plaatje7'])){?>
  16. <?
  17. else{
  18. if ($koekje==1){
  19. setcookie("plaatje1", "plaatje1", time()+3600*24);
  20. }
  21. elseif ($koekje==2){
  22. setcookie("plaatje2", "plaatje2", time()+3600*24);
  23. }
  24. elseif ($koekje==3){
  25. setcookie("plaatje3", "plaatje3", time()+3600*24);
  26. }
  27. elseif ($koekje==4){
  28. setcookie("plaatje4", "plaatje4", time()+3600*24);
  29. }
  30. elseif ($koekje==5){
  31. setcookie("plaatje5", "plaatje5", time()+3600*24);
  32. }
  33. elseif ($koekje==6){
  34. setcookie("plaatje6", "plaatje6", time()+3600*24);
  35. }
  36.  
  37. else{
  38. setcookie("plaatje7", "plaatje7", time()+3600*24);
  39. }
  40. }
  41.  
  42. ?>

1 antwoord

Gesponsorde links
Offline xSc - 10/01/2005 09:10 (laatste wijziging 10/01/2005 09:28)
Avatar van xSc Onbekend Houd er rekening mee: Logischerwijs wordt er, wanneer er een cookie aangemaakt wordt, geen plaatje getoond, omdat de pagina nog niet herladen is. De juiste oplossing is dus:

  1. <?php
  2.  
  3. $sPlaatje = 'plaatje' . rand( 1,7 );
  4.  
  5. if ( !isSet( $_COOKIE[$sPlaatje] ) ) {
  6.  
  7. setcookie( $sPlaatje, $sPlaatje, time() * 86400 );
  8.  
  9. }
  10.  
  11. echo '<img src="http://home.tiscali.nl/starfighter/rozemuts2/pics/' . $sPlaatje . '.jpg">';
  12.  
  13. ?>


Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.193s