PHP beginner |
|
Goeiedag,
op een forum waar ik af en toe aan werk wou ik een kleine functie inbouwen, deze functie zou in elk bericht waar een gebruikersnaam getypt word, deze gebruikersnaam moeten vervangen door een link naar het profiel van dit lid.
Op zich werkt dit allemaal perfect, maar de website gaat heel traag sinds ik de functie erin heb gebouwd.
Dit is de functie, er komt dus een hele post binnen en dan gaat hij door alle namen in de database en vervangt hij ze.
function controleerOpGebruikersnamen($str) {
$output = $str;
$dbc = getDBConnection();
$sql = "SELECT gebruikersnaam FROM leden";
if($result = $dbc->query($sql)) {
while($row = $result->fetch_object()) {
$output = preg_replace("/".$row->gebruikersnaam."/", "<a href='/profiel/".$row->gebruikersnaam.".html'>".getGebruikersnaam($row->gebruikersnaam, true)."</a>", $output);
}
}
$dbc->close();
return $output;
}
function controleerOpGebruikersnamen($str) { $output = $str; $dbc = getDBConnection(); $sql = "SELECT gebruikersnaam FROM leden"; if($result = $dbc->query($sql)) { while($row = $result->fetch_object()) { $output = preg_replace("/".$row->gebruikersnaam."/", "<a href='/profiel/".$row->gebruikersnaam.".html'>".getGebruikersnaam ($row->gebruikersnaam, true)."</a>", $output); } } $dbc->close(); return $output; }
Zou ik dit op een betere manier kunnen doen?
|