PHP-Code in Farbe

Da fällt mir gerade etwas ein.....
Eigentlich sollten diese Zeichen schon beim eintragen in die Datenbank escaped werden..... Stichwort SQL-Injection.
 
Hallo nochmal,

allso mir ist da grad was passiert und zwar:

Das Script funktioniert einwandfrei, wenn ich einen text bzw Code in die Var $string eingebe.
Sobald ich aber was aus der Db holle kommt dies " Warning: Unexpected character in input: '\' (ASCII=92) state=1 in /home/www/htdocs/test.php(28) : regexp code on line 21
"
line5 ist " [ /code ] "das hier.
An was kann es liegen?

Ich hab folgendes schon versucht.
Ich habe $string durch $row[text] ersetzt--> kommt der fehler und ich habe
$string = $row[text]; versucht. dort kommt auch der Fehler. Leider sagt mir der fehler gar nichts, kann mir da jmd helfen?

LG
 
line 21 ist aber nicht line 5. :confused:
Wenn ich mich nicht täusche, bedeutet die Warnung dass das "\" (welches vermutlich aus der Datenbank kommt) nicht erlaubt ist.

Mit $string=$row[text]; bzw. mit $string=$row['text']; sollte es eigetlich funktionieren.

Mir ist aber aufgefallen dass Variablen die in die Datenbank eingetragen werden, nicht bei der Ausgabe angezeigt werden.
Auch werden die Backslashes (teilweise) ausgegeben.
Da sich der Code aber korrekt in die Datenbank eintragen lässt, vermute ich dass man da beim auslesen mehr bewirtken kann, wenn man den String nach regulären Ausdrücken durchsucht.
Bei regulären Ausdrücken bin ich aber raus aus dem Spiel..... sind für mich nur Kryptische Zeichen. :(
 
supi nun gehts. vielen dank nochmal.

wenn es jmd intressiert, mein fehler lag darin das ich in die db z.b.
echo\"blubb\"; eingetragen hab. und richtig wäre es ohne "\" dann gehts auch.

also nochmal ein großen dank an alle die mir bei dem prob geholfen haben.
 
Dass heisst man kann bei Dir die " eintragen ohne dass sie escaped werden?
Na dann schaue Dir einmal an was man mit einer SQL-Injection so alles anrichten kann. ;)
 
Zurück