habe ein dringendes problem und ich steh mal wieder im wald:
ich habe in einem script die variable $data=$HTTP_POST_VARS die sich aus eingabefeldern einer suchmaske ergibt, mit den angegebenen suchkriterien will ich alle tabellen innerhalb einer datenbank durchlaufen lassen. dafür habe ich eine funktion, die mir alle tabellen innerhalb der datenbank liefert (return_tables()).
$index=retrun tables();
ich lasse jetzt mit einer foreach-schleife alle tabellen durchlaufen ($index)
und für jede tabelle den query erstellen in der form (beispiel)
foreach($index as $i){
$vals=$data;
$sql="SELECT * FROM tabelle WHERE ";
foreach($vals as $element)
{
$sql.="$feld="\'.$element."\'";
*ich hab die funktion abgekürzt, die querysyntax ist okay*
}
$res=mysql_query($sql);
}
das eigentlich problem ist nun:
beim ersten durchlauf wird $vals noch sauber auf $data referenziert und das array zurückgegeben, aber schon beim nächsten durchlauf funktionuiert es plötzlich nicht mehr und $vals ist kein Array mehr, wodurch natürlich eine fehlermeldung zustande kommt. dabei bleibt doch $data eigentlich unberührt, es wird nur darauf verwiesen.
ich habe sogar schon probiert mit variablen bezeichnern zu arbeiten, weil ich dachte, daß $val eventuell nicht überschreiben werden kann aus unerfindlcihen gründen, aber es funktionierte auch nicht, irgendwie wird entweder das Array $data zerstört oder der zeiger steht a ende des Arrays was eigentlich nicht passieren dürfte.
kann mir bitte jemand weiterhelfen?