URL: https://www.overclockers.at/coding-stuff/php_mysql_suche_mit_umlauten_174446/page_1 - zur Vollversion wechseln!
Folgende Ausgangssituation: Ich habe eine Suche (selbst geschrieben) für eine Newsseite die die MYSQL-Datenbank durchsucht.
Danach führe ich eine query aus um zu sehen wieviele Treffer es insgesamt waren:Code: PHPSELECT * FROM news WHERE titel LIKE "%$sucharray[$i]%" or unter LIKE "%$sucharray[$i]%" or artikel LIKE "%$sucharray[$i]%" ORDER BY datum DESC limit $offset,$anzahl;
Code: PHPSELECT COUNT(id) AS treffer FROM news WHERE" . titel LIKE "$sucharray[$i]" or unter LIKE "$sucharray[$i]" or artikel LIKE "%$sucharray[$i]%" . " AND datum<='$testdatum' AND frei=\"J\";
du könntest die suchergebnisse in php separat nochmal nach ÖBB durchsuchen (um das OBB und OEBB problem zu umgehen)
ist zwar nicht die eleganteste Lösung, aber dass die Suche zwischen ä & a nicht unterscheidet ist ja auch nicht fein.
Könnte man niht mit upper [http://dev.mysql.com/doc/refman/5.1...-functions.html] oder so für die Suche den String so umwandeln, dass quasi keine casesensitivity mehr da ist (da ohnehin alles Großbuchstaben) & dann mit dem neuen String binary abfragen?
Vllt hilft dir ein Link von denen weiter, der hat das selbe Problem gehabt: http://lists.phpbar.de/pipermail/my...May/003371.html
vielen dank fatmike, ich brauchte wohl einen externen anschub, mit LOWER() hab ich's schon probiert das hat damals nicht funktioniert, mit UPPER funktioniert es jetzt.
@burschi: bitte vorher den ganzen post lesen und nicht nur die überschrift
(siehe lösungsversuch 2)
habs eig. gelesen aber anscheinend missinterpretiert 
Aber das problem kannst du ja auch noch lösen. Je nachdem wie des ganze halt aussieht (wwi
) kannst du dir ja irgendwelche hilfsvariablen oder die treffer selbst auf die nächste seite rüberschicken (ich rede vom <form> in html) und da dann auslesen und anhängen oder so.
Weiß net ob des so gehen könnte, so hätte ich es halt gemacht. Hab halt noch keine großen erfahrungen mit php sammeln können 
edit: eh schon solved, diesmal überlesen *g*. Nadann is ja egal 
bitteschön *µ*
war eigentlich Zufall, dass ich Upper geschrieben hab & nicht Lower... Wundert mich, dass das eine funktioniert & das andere nicht!
D.h. suche funzt jetzt ganz?
(hab sowas bei suchfunktionen NIE berücksichtigt, aber jetzt wo ichs weiß...)
Zitat von fatmike182bitteschön *µ*
war eigentlich Zufall, dass ich Upper geschrieben hab & nicht Lower... Wundert mich, dass das eine funktioniert & das andere nicht!
Zitat
D.h. suche funzt jetzt ganz?
(hab sowas bei suchfunktionen NIE berücksichtigt, aber jetzt wo ichs weiß...)
Code: PHPmysql_query("SELECT * FROM news WHERE UPPER(titel) like \"%" . strtoupper($sucharray[$i]) . "%\" or UPPER(unter) LIKE \"%" . strtoupper($sucharray[$i]) . "%\" or UPPER(artikel) LIKE \"%" . strtoupper($sucharray[$i]) . "%\" ORDER BY datum DESC limit $offset,$anzahl;");
overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2026