Guten Tag,
habe ein kleines Problem. Ich werde es versuchen so einfach wie möglich zu erklären.
Mein suchscript findet bei der Abfrage Wörter mit Umlauten nur in tabelle A der Datenbank, Umlaute die in der Tabelee B sind werden nciht gefunden. Wörter ohne Umlaute werden in beiden Tabellen gesucht und auch gefunden also die Suche funktioniert sehr gut im Bezug auf beide Tabellen in der Datenbank.
Folgendes habe ich gesehen. Einträge in Tabelle A werden miot Umlauten reingeschrieben in Tabelle B aber nicht als Beispiel:
In Tabelle A wird so reingeschrieben : Härteprüfer
In Tabelle B wird so reingeschrieben : Härteprüfer
Ich kann leider nicht mehr eine Umwadnlung neuer Einträge als Fehlerlösung akzeptieren weil es schon etliche einträge gibt in tabelle B.
Also muss als Lösung es was geben wie :
wenn eingetragen wird ä dann wandle um in ä und suche danach in DB Tabelle B.
Ich hoffe ihr habt mein Problem verstanden. Ich habe bereits versucht mit html_entity_decode leider kein erfolg. Bitte wer kann helfen. Ich poste hier mal den Quellcode der PHP Datei. Weiter unten ist was ich versucht habe zu ändern aber keinen erfolg gebracht hat.
Original Datei :
Das habe ich geändert
Vielen Dank im Voraus
habe ein kleines Problem. Ich werde es versuchen so einfach wie möglich zu erklären.
Mein suchscript findet bei der Abfrage Wörter mit Umlauten nur in tabelle A der Datenbank, Umlaute die in der Tabelee B sind werden nciht gefunden. Wörter ohne Umlaute werden in beiden Tabellen gesucht und auch gefunden also die Suche funktioniert sehr gut im Bezug auf beide Tabellen in der Datenbank.
Folgendes habe ich gesehen. Einträge in Tabelle A werden miot Umlauten reingeschrieben in Tabelle B aber nicht als Beispiel:
In Tabelle A wird so reingeschrieben : Härteprüfer
In Tabelle B wird so reingeschrieben : Härteprüfer
Ich kann leider nicht mehr eine Umwadnlung neuer Einträge als Fehlerlösung akzeptieren weil es schon etliche einträge gibt in tabelle B.
Also muss als Lösung es was geben wie :
wenn eingetragen wird ä dann wandle um in ä und suche danach in DB Tabelle B.
Ich hoffe ihr habt mein Problem verstanden. Ich habe bereits versucht mit html_entity_decode leider kein erfolg. Bitte wer kann helfen. Ich poste hier mal den Quellcode der PHP Datei. Weiter unten ist was ich versucht habe zu ändern aber keinen erfolg gebracht hat.
Original Datei :
PHP-Code:
//Gruppendaten
$sqlquery="SELECT * FROM markt_inserate_data WHERE";
if(eregi("%",$q) || empty($q)){
$sqlquery .= "";
}else{
if(preg_match("/ /",$q)){
$qarr = explode(" ",$q);
$q_index = end($qarr);
for($i=0; $i < count($qarr); $i++) {
if($qarr[$i] == $q_index){
$sqlquery .= " titel LIKE '%".$qarr[$i]."%' OR cont LIKE '%".$qarr[$i]."%'";
}else{
$sqlquery .= " titel LIKE '%".$qarr[$i]."%' OR cont LIKE '%".$qarr[$i]."%' AND";
}
}
}else{
$sqlquery .= " titel LIKE '%".$q."%' OR cont LIKE '%".$q."%'";
}
}
PHP-Code:
//Gruppendaten
$sqlquery="SELECT * FROM markt_inserate_data WHERE";
if(eregi("%",$q) || empty($q)){
$sqlquery .= "";
}else{
if(preg_match("/ /",$q)){
$qarr = explode(" ",$q);
$q_index = end($qarr);
for($i=0; $i < count($qarr); $i++) {
if($qarr[$i] == $q_index){
$sqlquery .= " titel LIKE '%".$qarr[$i]."%' OR cont LIKE '%".html_entity_decode($qarr[$i])."%'";
}else{
$sqlquery .= " titel LIKE '%".$qarr[$i]."%' OR cont LIKE '%".html_entity_decode($qarr[$i])."%' AND";
}
}
}else{
$sqlquery .= " titel LIKE '%".$q."%' OR cont LIKE '%".html_entity_decode($q)."%'";
}
}
Kommentar