functie in eregi_replace

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Stefan lenders

stefan lenders

13/02/2009 13:37:00
Quote Anchor link
Ik wil dat binnen eregi_replace een functie wordt gedaan, maar dat lukt mij niet, op een of andere manier leest hij het niet goed uit.

Scripts
Functie
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
function artikel_naam($id)
{

    $sql = "SELECT * FROM `RDB_artikels` WHERE id='" . $id . "'";
    $result = mysql_query($sql);
    $count = mysql_num_rows($result);
    if($count == 0){
        $naam = "Artikel Onbekend";
    }
else{
    while($rij = mysql_fetch_object($result)){
        $naam = $rij['naam'];
    }
    }


    return $naam;
}

?>


eregi_replace
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
   $ntext
= eregi_replace("\\[raps\\]([^\\[]*)\\[/raps\\]", "<a href=\"index.php?screen=artikels&a=\\1\">" .
        artikel_naam("\\1") . " (#\\1)</a>", $ntext);
?>


Kortom als er bijvoorbeeld staat [raps]100[/raps] dan moet hij in de database zoeken naar artikel 100 en dan moet hij het weergeven als naamartikel (#100) en dit is dan een link naar het artikelblad.
 
PHP hulp

PHP hulp

24/11/2024 08:01:59
 
Pepijn de vos

pepijn de vos

13/02/2009 14:02:00
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
artikel_naam("\\1")
Werkt niet, dan stop je gewoon \\1 in die functie.

http://php.net/manual/en/function.preg-replace-callback.php
 
Stefan lenders

stefan lenders

13/02/2009 14:16:00
Quote Anchor link
Dat is chinees voor mij, ik heb php zo ver geleerd door de functies in te lezen maar wat daar staat snap ik dus voor geen meter, zou je een voorbeeld kunnen geven hoe te doen
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.