Holladiwaldfee
Jetzt will ich die Variable $worte an eine Funktion übergeben, die eine SQL-Where Bedingung erzeugt:
function where($a){
global $worte;
for($n=0;$n<count($worte);$n++){
if($sql_out){
$sql_out.=$a;
}
$sql_out.= "tab_schlagworte.Schlagwort LIKE '%".$worte[$n]."%'";
}
return $sql_out;
}
Das funktioniert jetzt nicht mehr. Die if-Bedingung (oben) wird ignoriert.
Naja, also ich will Dich ja nicht irgendwie beunruhigen, aber bei mir tut's die obige Funktion, und zwar ohne Mucken.
Beispiel:
----------------------------
$worte[0] = "bla";
$worte[1] = "hoi";
function where($a){
global $worte;
for($n=0;$n<count($worte);$n++){
if($sql_out){
$sql_out.=$a;
}
$sql_out.= "tab_schlagworte.Schlagwort LIKE '%".$worte[$n]."%'";
}
return $sql_out;
}
echo where("---");
----------------------------
ergibt bei mir für $sql_out:
tab_schlagworte.Schlagwort LIKE '%bla%'---tab_schlagworte.Schlagwort LIKE '%hoi%'
Und das ist ja glaub ich auch so ungefähr genau das, was rauskommen soll, oder ?
Ciao,
Harry