1
Hallo,
ich sitze gerade an einer Suchfunktion.
Bisher habe ich das so realisiert:
for($i=0;$i<=count($array_search_user);$i++)
{
$keys.= "(Headline LIKE '%".mysql_escape_string($array_search_user[$i])."%' OR Contenttext LIKE '%".mysql_escape_string($array_search_user[$i])."%') AND ";
}
$keys = substr($keys,0,-5);
$sql = mysql_connect($host,$user,$pword);
mysql_select_db($db,$sql);
$query = "SELECT ID,Headline,Contenttext FROM user WHERE (".$keys.") ORDER BY Headline";
$connect = mysql_query($query) or die(mysql_error());
Hier passiert also eine Suche im Feld Headline und im Feld Contenttext. Das "AND" brauche ich wenn im Suchfeld mehrere Begriffe eingetragen werden und somit das Array $array_search_user mehrere Einträge enthält.
Diese Methode der Durchsuchung ist okay für ein paar Felder. Jetzt will ich aber eine Suche über eine komplette Datenbank machen. D.h. ich hätte eine mörderische Abfrage wenn ich z.B. 10 DB-Tabellen mit jeweils 30 Felder auf diese Weise durchsuchen müsste.
Gibt es eine Möglichkeit per PHP zu sagen:
if($suchberiff in DB gefunden return Tabelle und Feld) ?
Gruß,
Andreas
ich sitze gerade an einer Suchfunktion.
Bisher habe ich das so realisiert:
for($i=0;$i<=count($array_search_user);$i++)
{
$keys.= "(Headline LIKE '%".mysql_escape_string($array_search_user[$i])."%' OR Contenttext LIKE '%".mysql_escape_string($array_search_user[$i])."%') AND ";
}
$keys = substr($keys,0,-5);
$sql = mysql_connect($host,$user,$pword);
mysql_select_db($db,$sql);
$query = "SELECT ID,Headline,Contenttext FROM user WHERE (".$keys.") ORDER BY Headline";
$connect = mysql_query($query) or die(mysql_error());
Hier passiert also eine Suche im Feld Headline und im Feld Contenttext. Das "AND" brauche ich wenn im Suchfeld mehrere Begriffe eingetragen werden und somit das Array $array_search_user mehrere Einträge enthält.
Diese Methode der Durchsuchung ist okay für ein paar Felder. Jetzt will ich aber eine Suche über eine komplette Datenbank machen. D.h. ich hätte eine mörderische Abfrage wenn ich z.B. 10 DB-Tabellen mit jeweils 30 Felder auf diese Weise durchsuchen müsste.
Gibt es eine Möglichkeit per PHP zu sagen:
if($suchberiff in DB gefunden return Tabelle und Feld) ?
Gruß,
Andreas