Wunschbox |
|
Hallo Leute
Wenn man bei uns in der Wunschbox ein song mit sonderzeichen eingibt kommt eine fehlermeldung
mysql error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near `Agostino - La Passion`,``,`92.224.142.220`)` at line 1
kann man da was machen das sonderzeichen zugelassen werden?
Danke für die antworten
|
|
01.03.2010 19:51 |
|
|
nobody
Büttel
[meine Galerie]
Dabei seit: 03.06.2009
Beiträge: 583
Herkunft: Da wo alle herkommen
Postid: 2641
|
|
Ist bei dir der CT Sicherheitshack drin?
|
|
01.03.2010 21:21 |
|
|
ersatzspieler unregistriert
|
|
nö net das ich weiß das die es haben und in deutsch der text mal
MySQL-Fehler: Sie haben einen Fehler in der SQL-Syntax; Sie bitte der Bedienungsanleitung zu Ihrem MySQL-Server-Version für den richtigen Syntax entspricht der Nähe `Agostino verwenden - La Passion `,``,` 92.224.142.220") "at line 1
MFG
|
|
01.03.2010 21:30 |
|
|
haumi
Boardbetreiber
[meine Galerie]
Dabei seit: 06.06.2009
Beiträge: 3.442
Herkunft: NRW
Postid: 2643
|
|
Es gibt verschiedene Arten von Sonderzeichen, die man vor den absenden zu mysql also zur Datenbank maskieren soll, um derartige Fehlermeldungen zu verhinden.
dere gebräuchlichste ist mysql_real_escape_string
Hier eine Erklärung aus dem php.net
Zitat: |
string mysql_real_escape_string ( string $unescaped_string [, resource $link_identifier ] )
Maskiert spezielle Zeichen im unescaped_string unter Berücksichtigung des aktuellen Zeichensatzes der Verbindung, so dass das Ergebnis ohne Probleme in mysql_query() verwendet werden kann. Wenn Sie Binärdaten einfügen wollen, müssen Sie die Funktion auf jeden Fall verwenden.
mysql_real_escape_string() ruft die Funktion mysql_real_escape_string der MySQL-Bibliothek auf, die folgende Zeichen mit einem Backslash ('\') versieht: \x00, \n, \r, \, ', " und \x1a.
Die Funktion muss immer (mit wenigen Ausnahmen) verwendet werden, um Daten abzusichern, bevor sie per Query an MySQL übermittelt werden. |
|
ich gehe noch weiter und nehme noch str_replace dazu, um aus hochkommas Bindestriche zu machen.
Wenn die wunschbox auf dem Server liegt kann ich das machen.
Da bei den Rätselburgkommentaren ebenfalls Probleme dieser Art auftraten habe ich z. B. bei mir folgende Zeile eingebracht:
$desc_komm = mysql_real_escape_string(str_replace("'","-",$_POST['desc_komm']));
im Orginal war nur die Variable $_POST['desc_komm vorhanden.
LG
haumi
__________________
Gelassen das hinnehmen, was nicht zu ändern ist,
engagiert angehen was man gestalten kann.
|
|
01.03.2010 21:38 |
|
|
haumi
Boardbetreiber
[meine Galerie]
Dabei seit: 06.06.2009
Beiträge: 3.442
Herkunft: NRW
Postid: 2645
|
|
Ich hab was geändert und einen Wunsch abgeschickt.
I'm a believer - Monkees
als Gruß
Ist ein "Test" wegen den Sonderzeichen
ist angenommen worden.
Frag mal nach ob das so in Ordnung ist.
Anstelle des Hochkommas steht jetzt ein Bindestrich.
I'm --> I-m
>Da kann man aber mit leben.
Was wurde gemacht?
Ich habe folgende Zeilen neu hinzugefügt:
(Das sind Texteingaben die man eintippen kann!)
code: |
1:
2:
|
$song = mysql_real_escape_string(str_replace("'","-",$_POST[song]));
$test = mysql_real_escape_string(str_replace("'","-",$_POST[text])); |
|
weiter habe ich die Zeile
code: |
1:
|
$eintragen = $db->query("INSERT INTO bb".$n."_wunschbox(id,datum,name,email,song,gruss,ipadress) VALUES ('','".time()."','".strip_tags($_POST[name])."','".strip_tags($_POST[email])."','".strip_tags($_POST[song])."','".strip_tags($_POST[text])."','$_SERVER[REMOTE_ADDR]')"); |
|
abgeändert zu
code: |
1:
|
$eintragen = $db->query("INSERT INTO bb".$n."_wunschbox(id,datum,name,email,song,gruss,ipadress) VALUES ('','".time()."','".strip_tags($_POST[name])."','".strip_tags($_POST[email])."','".$song."','".$text."', '$_SERVER[REMOTE_ADDR]')"); |
|
das wars
LG
haumi
__________________
Gelassen das hinnehmen, was nicht zu ändern ist,
engagiert angehen was man gestalten kann.
|
|
01.03.2010 22:44 |
|
|
ersatzspieler unregistriert
|
|
so wie ich weiß geht das nun wieder aber es hat mal keiner besheit sagen müßen oder können so lange wir immer schaun arbeit haben wohl ok hehe
mann könnte ja mal bescheit geben und sagen geht nun wieder aber ne warum auch lassen wir die mal suchen was die finden so kommt es mir gerade vor aber egal !!!!
MFG
|
|
01.03.2010 22:51 |
|
|
|