Mysql, php og ' " hjælp

Tags:    mysql php help

Er der nogen der ved hvordan i mit CMS system, når jeg opretter en nyhed at det er muligt at skrive ' og " ind. Da det er php gider den ikke udføre mine kommandoer.



4 svar postet i denne tråd vises herunder
1 indlæg har modtaget i alt 3 karma
Sorter efter stemmer Sorter efter dato
http://php.net/manual/en/mysqli.real-escape-string.php

eller
http://php.net/manual/en/function.mysql-real-escape-string.php (men mysql udvidelsen udgår af PHP)



Indlæg senest redigeret d. 15.08.2011 22:03 af Bruger #10216
Fold kodeboks ind/udPHP kode 


Det sætter \ foran alle special tegn... det bør du i øvrigt altid gøre for at forebygge SQL-injections når en bruger indtaster noget der skal i en database :)



Prøv engang at skrive noget af koden ind.
Ellers, så prøv at brug htmlspecialchars() i din $_POST.

Eksempelvis sådan her:
Fold kodeboks ind/udPHP kode 




Kig ind til PDO istedet. http://php.net/manual/en/book.pdo.php

Så slipper du alt det der mysql_real_escape_string osv.. som bare er nedern at forholde sig til hele tiden

Du får fejl for at din query ser ud eksempel:
SELECT id FROM table WHERE id=$table

hvilket er stor brist på sikkerhed (research sql injections for at læse om det)

brug ikke htmlspecialchars eller addslashes hvis nu vælger ikke at kigge ind til PDO (hvilket rekommenderes stærkt!) men hellere mysql_real_escape_string



t