Fragenfrager
Erfahrenes Mitglied
Hallo liebes Forum,
folgendes Problem macht mich gerade wahnsinnig.
In einem Formular gebe ich einen Namen ein, der dann in verschiedenen Datenbanken gesucht wird. Da es beim Anlegen der Namen keine Konventionen gab, wie mir Umlauten umzugehen ist, haben wir beide Varianten vorliegen, also z.B. "Grünke" und "Gruenke".
In meinen DB-Statements will ich beide Varianten berücksichtigen. Dazu folgender Code in der Datei functions.php:
Der Aufruf erfolgt aus einer anderen Datei, in der die functions.php eingebunden ist:
Das Problem ist, dass $convertedusername wenn ich es testweise mit echo ausgeben, immernoch die Umlaute drin hat. Sowohl in der function selbst als auch in der Funktion "ergebnis". Lasse ich die Funktion umlauteumwandeln testweise ganz alleine (eigene Datei, nirgends eingebunden) aufrufen, so funktioniert die Umwandlung. Es muss also irgendwo noch etwas sein, dass dies verhindert oder zurückwandelt.
Hat jemand eine Idee, wonach ich noch suchen kann?
folgendes Problem macht mich gerade wahnsinnig.
In einem Formular gebe ich einen Namen ein, der dann in verschiedenen Datenbanken gesucht wird. Da es beim Anlegen der Namen keine Konventionen gab, wie mir Umlauten umzugehen ist, haben wir beide Varianten vorliegen, also z.B. "Grünke" und "Gruenke".
In meinen DB-Statements will ich beide Varianten berücksichtigen. Dazu folgender Code in der Datei functions.php:
PHP:
function umlauteumwandeln($str){
$tempstr = Array("Ä" => "AE", "Ö" => "OE", "Ü" => "UE", "ä" => "ae", "ö" => "oe", "ü" => "ue");
return strtr($str, $tempstr);
}
function ergebnis($verbindung,$anwendungsname,$username)
{
$convertedusername=umlauteumwandeln($username);
switch ($anwendungsname)
{
//… hier werden für die verschiedenen Anwendungen die Statements erzeugt, mal mit $username, mal mit $convertedusername
}
}
PHP:
ergebnis($con,$anwendungsname,$suchbegriff);
Das Problem ist, dass $convertedusername wenn ich es testweise mit echo ausgeben, immernoch die Umlaute drin hat. Sowohl in der function selbst als auch in der Funktion "ergebnis". Lasse ich die Funktion umlauteumwandeln testweise ganz alleine (eigene Datei, nirgends eingebunden) aufrufen, so funktioniert die Umwandlung. Es muss also irgendwo noch etwas sein, dass dies verhindert oder zurückwandelt.
Hat jemand eine Idee, wonach ich noch suchen kann?