Tach zusammen,
HIIIIIIIIIIIIIIIIILFEEEEEEEEE!! ;-)
Ich versuche mal darzustellen, was eingabe- und scriptmäßig passiert bis es zu einem fehlerhaften MySql-Eintrag kommt. Im Spiel sind javascript, php und MySql, wobei ich mittlerweile alles, was ich zur Fehlerbehebung finden konnte und meines Erachtens relevant ist, ausprobiert habe, um den Fehler zu beseitigen. Aber der Reihe nach:
1. In einem utf8-HTML-input-Element (id="label01") ist eingetragen "Tröte" (klar, ohne Anf.-Zeichen)
2. JS-Funktion: ~~~javascript
label = document.getElementById('label01').value;
url = "speichern.php?label=" + label;
window.open(url,'test');
3\. speichern.php:~~~php
$label = $_GET['label'];
$labelEscaped = mysql_real_escape_string($label);
mysql_connect(SERVER, USER, PASS);
mysql_select_db(DB);
mysql_query("SET NAMES 'utf8'");
$sql = "update tabelle set label='$labelEscaped' where id='1'; // der DS existiert
Ergebnis im Datensatz: label = 'Tr', 'öte' fehlt.
Testausgaben:
a) echo $label
ergibt 'Tröte'
b) echo $sql
ergibt "update tabelle set label='Tröte' where id='1'"
c) Die URL des Popup-Fensters zeigt: "http://...speichern.php?label=Tröte"
Hat mal einer einen Tipp oder kann mir gleich sagen, was ich übersehen bzw. falsch gemacht habe?
Danke. :-))
Gruß vom foomaker
Ändere, was Du ändern kannst.
Akzeptiere, was Du nicht ändern kannst.
Lerne, das eine vom anderen zu unterscheiden.``