login  Naam:   Wachtwoord: 
Registreer je!
 Forum

ID meegeven lukt niet (Opgelost)

Offline shihan - 18/06/2009 21:23 (laatste wijziging 18/06/2009 21:24)
Avatar van shihanNieuw lid Ik heb volgende pagina:
Hier word een lijst weergegeven van alle aangesloten clubs. Als men op de clubnaam klikt dan word er een nieuwe pagina geopend nl. Clubdetail.php
Het probleem is dat in de pagina clubdetail het ID van de gevraagde pagina niet gelezen wordt. Dus ik vergeet weer iets...



  1. CLUBS.PHP
  2. <?php
  3. require"db.php";
  4. ?>
  5.  
  6. <?php
  7.  
  8. $res=mysql_query("SELECT * FROM clubs ORDER BY naam")
  9. or die("Query heeft gefaald: " . mysql_error());
  10. $out="<table width=90% height=0 border=0 class='tabeltekst' align=center>";
  11. $out.="<th background='images/web/balk.jpg'><br>Clubs aangesloten bij V.J.J.F. - Stijl De Wit vzw<br></th>"
  12. ."</tr>";
  13. while ($row=mysql_fetch_assoc($res))
  14. {
  15. $out.="<td><a href='index.php?inh=clubdetail&id={$row["ID"]}'>{$row["naam"]}</a></td>"
  16. ."</tr>";
  17. }
  18. $out.="</table>";
  19. echo $out;
  20.  
  21. ?>


  1. CLUBDETAIL.PHP
  2. <?php
  3.  
  4. if (!isset($id))
  5. die("Deze pagina mag niet manueel worden geopend.");
  6.  
  7. $row=mysql_fetch_assoc(mysql_query("SELECT * FROM clubs WHERE ID=$id"))
  8. or die("Query heeft gefaald: " . mysql_error());
  9.  
  10.  
  11.  
  12. $out.="<table>";
  13. $out.="<tr><td><br>{$row["tekst"]}</td></tr>\n";
  14. $out.="</table>";
  15.  
  16. echo $out;
  17.  
  18.  
  19. ?>

6 antwoorden

Gesponsorde links
Offline ArieMedia - 18/06/2009 21:41 (laatste wijziging 18/06/2009 21:49)
Avatar van ArieMedia Gouden medaille

PHP ver gevorderde
Wuuuw, Leren inspringen jongen.. ik zal even mijn dreamweaver opstarten en even kijken.

Je haalt bij het 2e stukje $id op. je bedoelt hiermee denk ik de $_GET['id'];
Offline shihan - 18/06/2009 21:48
Avatar van shihan Nieuw lid In dreamweaver staat het al veel beter, door het hierop te plaatsen is alles wat versprongen... sorry
Offline ArieMedia - 18/06/2009 21:50 (laatste wijziging 18/06/2009 22:00)
Avatar van ArieMedia Gouden medaille

PHP ver gevorderde
shihan schreef:
In dreamweaver staat het al veel beter, door het hierop te plaatsen is alles wat versprongen... sorry
Ik zag het, merkte het zelf ook.

Maar Anyway.. Heb het voor je gefixed op deze manier denk ik:

  1. <?php
  2. require"db.php";
  3.  
  4. $res = mysql_query("SELECT * FROM clubs ORDER BY naam")
  5. or die("Query heeft gefaald: " . mysql_error());
  6.  
  7. $out="<table width=90% height=0 border=0 class='tabeltekst' align=center>";
  8. $out.="<th background='images/web/balk.jpg'>Clubs aangesloten bij V.J.J.F. - Stijl De Wit vzw</th>";
  9. while ($row=mysql_fetch_assoc($res)) {
  10. $out.='<tr>
  11. <td><a href="index.php?inh=clubdetail&id='.$row["ID"].'">'.$row["naam"].'</a></td>
  12. </tr>';
  13. }
  14.  
  15. $out.="</table>";
  16. echo $out;
  17.  
  18.  
  19. // vanaf hier CLUBDETAIL.PHP
  20. if(!isset($_GET['id']) || !is_numeric($_GET['id'])) {
  21. die("Deze pagina mag niet manueel worden geopend.");
  22. } else {
  23. $id = $_GET['id'];
  24. $row=mysql_fetch_assoc(mysql_query("SELECT * FROM clubs WHERE ID= ".$id))
  25. or die("Query heeft gefaald: " . mysql_error());
  26.  
  27. $out.="<table>";
  28. $out.="<tr><td><br>".$row['tekst']."</td></tr>\n";
  29. $out.="</table>";
  30. echo $out;
  31. }
  32. ?>


Je stuurt iets weg met een $_GET[], maar je haalt het niet op in het script. Tevens is het slim om tegen SQL-injectie te controleren of $_GET['id'] numeriek is. dit doe je met PHP.net: is_numeric

// Edit #3 xD
Ook doe je vaak {$row["tekst"]}, ik weet niet wat je hiermee wil bereiken maar voor zover ik weet helpt dat niet..

Ik doe het meestal zo.
  1. $gebruiker = array('naam' => 'Arjan', 'leeftijd' => 19);
  2. echo 'Hallo ik ben '.$gebruiker['naam'].' en ik ben '.$gebruiker['leeftijd'].' Jaar oud';
  3. // Kan natuurlijk ook zo..
  4.  
  5. echo "Hallo ik ben $gebruiker['naam'] en ik ben $gebruiker['leeftijd'] jaar oud";
Offline shihan - 18/06/2009 21:59
Avatar van shihan Nieuw lid Ik krijg volgende foutmelding:

Parse error: syntax error, unexpected $end in /home/stidew/public_html/clubdetail.php on line 20
Offline ArieMedia - 18/06/2009 22:01
Avatar van ArieMedia Gouden medaille

PHP ver gevorderde
shihan schreef:
Ik krijg volgende foutmelding:

Parse error: syntax error, unexpected $end in /home/stidew/public_html/clubdetail.php on line 20
Haha, heb hem net zelf ook aangepast. De else is niet afgelosten, nog even een } onderaan doen.
Offline shihan - 18/06/2009 22:03
Avatar van shihan Nieuw lid Tnx,


ik had het ook juist gezien....

tnx buddy... nu kan ik verder..
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.196s