Hi dedlfix,
Betrachte bitte jeden Kontext getrennt für sich allein. Es ist uninteressant, welche Kontexte später mal eine Rolle spielen werden.
Ok, das habe ich begriffen, ich hab die ganze Zeit überlegt, wie ich das später auszugebende bereits bei der Eingabe
Sauber (für die HTML Ausgabe) in die Datenbank kriege.
Das war wohl der falsche Ansatz.
Wenn es anzuzeigender Inhalt ist, dann bearbeite ihn HTML-gerecht, im Augenblick der Übergabe an das Ausgabemedium. Sprich: echo htmlspecialchars($inhalt);
Das kommt dann als nächster schritt an die Reihe.
Ich hab deinen Vorschlag vom ersten Post mit mysql_real_escape versucht umzusetzen,
hab da auch was gefunden, nur irgendwie scheint das auch nicht richtig zu sein.
Wenn in der Textarea ein \ benutzt wird schickt er die Informationen manchmal ab ab und entfernt das , teilweise wird es aber auch nicht abgeschickt.
Auch z.b. werden ' manchmal mit übergeben, manchmal nicht.
Wenn ich - tz'w - bekomme ich als ausgabe - tz'w - und wenn ich \n schreibe
bekomme ich im Quelltext einen Zeilen umbruch. Ist das richtig so?
Hier mal mein Katastrophales Script, hoffe ich nerv dich nicht allzu sehr.
// DB Connect
$link = mysql_connect('***', '***', '***');
// nach den überprüfungen, ob Felder leer sind
else {
echo "<p>Das Formular wurde einwandfrei ausgefüllt.</p> ";
if (isset($_POST['interpret'])
&& isset($_POST['album'])
&& isset($_POST['songtext'])) {
if(!is_resource($link)) {
echo "Verbindung zum Server fehlgeschlagen\n";
} else {
if(get_magic_quotes_gpc()) {
$interpret = stripslashes($_POST['interpret']);
$album = stripslashes($_POST['album']);
$songtext = stripslashes($_POST['songtext']);
} else {
$interpret = $_POST['interpret'];
$album = $_POST['album'];
$songtext = $_POST['songtext'];
}
$eintrag = sprintf ("INSERT INTO songtexte (interpret, album, datum, songtext) VALUES ('$interpret', '$album', '$datum', '$songtext')",
mysql_real_escape_string($interpret),
mysql_real_escape_string($album),
mysql_real_escape_string($songtext),
$_POST['user_id']);
$eintragen = mysql_query($eintrag);
if (mysql_affected_rows($eintrag) > 0) {
echo "Produkt eingefuegt\n";
}
}
}
}
Grüße,
Engin
GYRO
