login  Naam:   Wachtwoord: 
Registreer je!
 Forum

raar ubb probleempje

Offline cowb - 29/05/2006 21:07
Avatar van cowbLid Hoi iedereen...

Ik zit ff met een irritant probleempje dit is men code...

  1. <?
  2. function faq ($ja) {
  3. if($ja == 1) {
  4. $hrg = mysql_query("SELECT * FROM cat");
  5. while ($tje = mysql_fetch_array($hrg)) {
  6. echo "&raquo;<a href='index.php?p=faq&cat=".$tje['id']."' class=menu>".$tje['cat']."</a>";
  7. }
  8. }
  9. }
  10. $menu = htmlspecialchars($menu);
  11. $menu = stripslashes($menu);
  12. $menu = nl2br($menu);
  13.  
  14. //functies
  15. $menu = str_replace("[faq]", "faq('1')", $menu);
  16. ?>

zoals u wel ziet moet bij als ik [faq] gebruik dit vervangen voor een aantal records uit men database... dat doet hij dus niet... maar hij geeft gwn faq('1') weer... ik snap niet wat er fout is?? 

9 antwoorden

Gesponsorde links
Offline Crazed - 29/05/2006 21:09
Avatar van Crazed PHP interesse haal faq buiten de quotes, anders interpreteert php deze als een string ipv een functie

  1. $menu = str_replace("[faq]", faq('1'), $menu);
Offline cowb - 29/05/2006 21:13
Avatar van cowb Lid Als ik dat doe... dan krijg ik die gevens boven mijn menu te zien... (uit men tabel ed.) wat niet de bedoeling is... maar wat hij toch doet 
Offline Crazed - 29/05/2006 21:31 (laatste wijziging 30/05/2006 07:42)
Avatar van Crazed PHP interesse ow... ik denk dat ik het al zie... Je wil dus dat de link komt op de plaats waar [faq] stond.

ik denk dat het probleem dan is dat er geen waarde geretourneerd wordt naar de str_replace. Probeer eens zo:

  1. <?php
  2. function faq ($ja) {
  3. if($ja == 1) {
  4. $hrg = mysql_query("SELECT * FROM cat");
  5. while ($tje = mysql_fetch_array($hrg)) {
  6. $link = "&raquo;<a href='index.php?p=faq&cat=".$tje['id']."' class=menu>".$tje['cat']."</a>";
  7. }
  8. return $link;
  9. }
  10. }
  11. $menu = htmlspecialchars($menu);
  12. $menu = stripslashes($menu);
  13. $menu = nl2br($menu);
  14.  
  15. //functies
  16. $menu = str_replace("[faq]", faq('1'), $menu);
  17. ?>
Offline cowb - 29/05/2006 21:47 (laatste wijziging 29/05/2006 21:50)
Avatar van cowb Lid Nu plaats hij het al in het menu... maar toont hij maar 1 record per keer (iedere keer het laatste)
Offline Crazed - 30/05/2006 07:43
Avatar van Crazed PHP interesse Dan moet je elke waarde die in je db zit toevoegen aan die variabele link
  1. <?php
  2. function faq ($ja) {
  3. if($ja == 1) {
  4. $hrg = mysql_query("SELECT * FROM cat");
  5. while ($tje = mysql_fetch_array($hrg)) {
  6. $link .= "&raquo;<a href='index.php?p=faq&cat=".$tje['id']."' class=menu>".$tje['cat']."</a>";
  7. }
  8. return $link;
  9. }
  10. }
  11. $menu = htmlspecialchars($menu);
  12. $menu = stripslashes($menu);
  13. $menu = nl2br($menu);
  14.  
  15. //functies
  16. $menu = str_replace("[faq]", faq('1'), $menu);
  17. ?>
Offline Thomas - 30/05/2006 08:54
Avatar van Thomas Moderator Die parameter $ja doet niet echt veel? Wat zou faq() moeten retourneren dan?
Offline timo - 30/05/2006 15:10
Avatar van timo PHP ver gevorderde doe eens faq(1) , 1 is een string zoals je het nu gebruikt, je vergelijkt het als een int en kan het beter dus ook als een int ingeven, ints hoeven niet binnen quotes!
Offline cowb - 30/05/2006 17:46 (laatste wijziging 30/05/2006 17:58)
Avatar van cowb Lid @ Timo: Ja weet ik hoor... maar oorspronkelijk was het zo... maat werkte niet dus ik probeerde maar wat... Maar tot nu toe nog niet het gewenste resultaat 


[EDIT] @ Crazed: Thx nu werkt het (je 2de methode)
Offline Ibrahim - 31/05/2006 07:32 (laatste wijziging 31/05/2006 14:06)
Avatar van Ibrahim PHP expert
  1. <?php
  2. //testje:
  3.  
  4. $link .= 'hoi';
  5.  
  6. ?>


zal outputten:

  1. Notice: Undefined variable: link in F:\WAMP\www\Battle\PM\testje.php on line 3


los je op door:

  1. <?php
  2. $link = '';
  3. $link .= 'hoi';
  4.  
  5. ?>


zal outputten:

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