Hi,
ich habe so ein kleines Problem mit Sonderzeichen.
Immer wenn ich Daten in der DB speichere, dann werden das mehr so Hyroglyphen als alles andere.
Deswegen habe ich folgene Funktion geschrieben:
PHP-Code:
<?php
function sonderzeichen ($sonderzeichen){
$sonderzeichen = str_replace('ö', 'ö', $sonderzeichen);
$sonderzeichen = str_replace('ä', 'ä', $sonderzeichen);
$sonderzeichen = str_replace('ü', 'ü', $sonderzeichen);
$sonderzeichen = str_replace('Ö', 'Ö', $sonderzeichen);
$sonderzeichen = str_replace('Ä', 'Ä', $sonderzeichen);
$sonderzeichen = str_replace('Ü', 'Ü', $sonderzeichen);
$sonderzeichen = str_replace('ß', 'ß', $sonderzeichen);
$sonderzeichen = str_replace('%', '%', $sonderzeichen);
$sonderzeichen = str_replace('$', '$', $sonderzeichen);
$sonderzeichen = str_replace('@', '@', $sonderzeichen);
return $sonderzeichen;
}
?>
So und dann rufe ich sie so auf:
PHP-Code:
<?php
error_reporting(E_ALL);
include('../config.inc.php');
include('../includes/special_character.php');
$event_title = sonderzeichen(addslashes(htmlspecialchars($_POST['event_title'])));
$event_date = sonderzeichen(addslashes(htmlspecialchars($_POST['event_date'])));
$event_time = sonderzeichen(addslashes(htmlspecialchars($_POST['event_time'])));
$event_place = sonderzeichen(addslashes(htmlspecialchars($_POST['event_place'])));
$event_website = sonderzeichen(addslashes(htmlspecialchars($_POST['event_website'])));
$event_desc = sonderzeichen(addslashes(htmlspecialchars($_POST['event_description'])));
if(isset($_GET['changeid']))
{
$a_query = mysql_query("UPDATE events set event = '".$event_title."', date = '".$event_date."', time = '".$event_time."', place = '".$event_place."', website = '".$event_website."', description = '".$event_desc."' WHERE id = '".$_GET['changeid']."'") OR die(mysql_error());
}
else
{
$a_query = mysql_query("INSERT INTO events(event, description, place, date, time, website) VALUES('".$event_title."', '".$event_desc."', '".$event_place."', '".$event_date."', '".$event_time."', '".$event_website."')") OR die(mysql_error());
}
header('Location: index.php?action=events&save=yes');
?>
Jetzt nur mal als Beispiel.
Trotzdem stehen in der DB immer noch diese Hyroglyphen.
Aber warum?
Achja habe ein Linuxsystem auf meinem Rechner und die DB hat MySQL-Zeichensatz: UTF-8 Unicode (utf
Könnt ihr mir helfen?
Danke