PHP ???? ?? ?????? ??
1.SQL ??? ??
?? SQL ???? ? ??? SQL ??? ???? ??? ???? ?? ???? ????? ???? ????. ???? ???? ????? ??? ?? ?? SQL ??? ???? ???.
??? ???? ??? ???? ?? ????? ? ???. ?? ??? ???? ??? ???? ????? ???.
?? ??, ????? ???? ??? ??, ???? ?? ???? ???.
? ???? ??? ?? ??? ????. ? ??? js? ???? ??? ? ????. ?? ??? ???? ??? ???? ??? ??? ?? ??? ??? ??????? ???? ?? ???? ???? ???. ??? ??? ??? ?? ??? ??? ??? ???? ????. ???? ???? ??? ??? ?? ????. ?? ?? ??? ?? ??? ???? ? ??? ??? ? ????. ??
???? ??? ???? ???? ? ????
SQL ??? ????? ?? ??? ???? ???.
· 1. ??? ??? ?? ???? ???. ???? ??? ????? ???? ????? ?????? ???? ?? ???? ??? ??? ? ????.
· 2. SQL? ?? ????? ???? ????. ?????? SQL? ????? ??? ?? ? ???? ?? ?? ????? ??? ? ????.
· 3. ??? ???? ?????? ??? ???? ????. ? ??????? ?? ??? ??? ?? ??? ?????? ??? ??????.
· 4. ?? ??? ?? ???? ??, ???? ? ??? ??? ?????? ?? ???? ????.
· 5. ??????? ?? ??? ??? ? ??? ?? ???? ???. ??? ?? ?? ??? ???? ?? ?? ???? ???? ?? ?? ????.
· 6. SQL ?? ?? ?? ??? , ?? ????? ?? ???? ???? ????? SQL ?? ?? ??? jsky? ???? ???? ????? Yisi ???? ?? ??? ?? ??? ????. MDCSOFT SCAN ? MDCSOFT-IPS? ???? SQL ??, XSS ?? ?? ????? ??? ? ????.
SQL ?? ??
Perl, PHP ?? ???? ????? SQL ??? ???? ?? ???? ??? ???? Escape???.
PHP? MySQL ??? ?? ?? ??
<?php if (get_magic_quotes_gpc()) { $name = stripslashes($name); } $name = mysql_real_escape_string($name); mysql_query("SELECT * FROM users WHERE name='{$name}'"); ?>
Like ?
like ??? ??? ??????? mysql_real_escape_string() ??? ?????. ????? "_" ? "%"? ???? ???? ?? ??? ?????. ???? ?? "abcd_"? ????? ??? ?? ???? "abcd_", "abcde", "abcdf" ?? ?????. ???? "30%"(??: 30%)? ????? ???? ??? ?????.
PHP ??????? ?? ?? ?? addcslashes() ??? ???? ? ??? ??? ? ????.
<?php $sub = addcslashes(mysql_real_escape_string("%something_"), "%_"); // $sub == \%something\_ mysql_query("SELECT * FROM messages WHERE subject LIKE '{$sub}%'"); ?>