̽ÌÖPHP SQL×¢ÈëµÄ½â¾ö˼·
˼·:SQLÀᄀ¿ÉÄܵIJÉÓÃÁ½¸öÒýºÅ±ÕºÏ±äÁ¿;¶Ô±äÁ¿ÖеÄÒýºÅתÒå;¶Ô²»ÄܲÉÓÃ2¸öÒýºÅ±ÕºÏµÄ±äÁ¿,ÏÈÔ¤ÏÈÅжϱäÁ¿ÀàÐÍ;
·½°¸:
1 ËùÓзÇÊýÖµÔËËã(Èç×Ö·û,¼òµ¥ÊýÖµÐ͵ȵÈ)µÄSQL±äÁ¿¶¼¼ÓÒýºÅ;
2 ËùÓзÇÊýÖµÔËËãµÄSQL±äÁ¿µÄÖµ¶¼²ÉÓÃmagic_quotes_gpc»òÕßaddslashesתÒå;
3 ¶ÔÐèÒªÊýÖµÔËËãµÄ±äÁ¿ºÍÆäËû²»ÄܼÓÒýºÅµÄSQL(ÈçINÓï¾ä),Ô¤ÏÈÅжϱäÁ¿ÀàÐÍ.
4 ¹Ø±Õphp.iniµÄdisply_error.(¿ÉÑ¡,Èç²»ÄܹرÕ,Ðè×Ô¼ºÊÖ¶¯ÈÃSQLÓï¾ä²»ÄÜÖ´Ðб¨´í)
php5ժ¼
Ô¤·À´ëÊ©
Ò²ÐíÓÐÈË»á×ÔÎÒ°²Î¿£¬Ëµ¹¥»÷ÕßÒªÖªµÀÊý¾Ý¿â½á¹¹µÄÐÅÏ¢²ÅÄÜʵʩÉÏÃæµÄ¹¥»÷¡£Ã»´í£¬È·ÊµÈç´Ë¡£µ«Ã»ÈËÄܱ£Ö¤¹¥»÷ÕßÒ»¶¨µÃ²»µ½ÕâЩÐÅÏ¢£¬Ò»µ«ËûÃǵõ½ÁË£¬Êý¾Ý¿âÓÐй¶µÄΣÏÕ¡£Èç¹ûÄãÔÚÓÿª·ÅÔ´´úÂëµÄÈí¼þ°üÀ´·ÃÎÊÊý¾Ý¿â£¬±ÈÈçÂÛ̳³ÌÐò£¬¹¥»÷Õ߾ͺÜÈݵõ½µ½Ïà¹ØµÄ´úÂë¡£Èç¹ûÕâЩ´úÂëÉè¼Æ²»Á¼µÄ»°£¬·çÏվ͸ü´óÁË¡£
ÕâЩ¹¥»÷×ÜÊǽ¨Á¢ÔÚ·¢¾ò°²È«Òâʶ²»Ç¿µÄ´úÂëÉϵġ£ËùÒÔ£¬ÓÀÔ¶²»ÒªÐÅÈÎÍâ½çÊäÈëµÄÊý¾Ý£¬ÌرðÊÇÀ´×ÔÓÚ¿Í»§¶ËµÄ£¬°üÀ¨Ñ¡Ôñ¿ò¡¢±íµ¥Òþ²ØÓòºÍ cookie¡£¾ÍÈçÉÏÃæµÄµÚÒ»¸öÀý×ÓÄÇÑù£¬¾ÍËãÊÇÕý³£µÄ²éѯҲÓпÉÄÜÔì³ÉÔÖÄÑ¡£
ÓÀÔ¶²»ÒªÊ¹Ó󬼶Óû§»òËùÓÐÕßÕʺÅÈ¥Á¬½ÓÊý¾Ý¿â¡£ÒªÓÃȨÏÞ±»ÑϸñÏÞÖÆµÄÕʺš£
¼ì²éÊäÈëµÄÊý¾ÝÊÇ·ñ¾ßÓÐËùÆÚÍûµÄÊý¾Ý¸ñʽ¡£PHP Óкܶà¿ÉÒÔÓÃÓÚ¼ì²éÊäÈëµÄº¯Êý£¬´Ó¼òµ¥µÄ±äÁ¿º¯ÊýºÍ×Ö·ûÀàÐͺ¯Êý£¨±ÈÈç is_numeric()£¬ctype_digit()£©µ½¸´Ô Perl ¼æÈÝÕýÔò±í´ïʽº¯Êý¶¼¿ÉÒÔÍê³ÉÕâ¸ö¹¤×÷¡£
Èç¹û³ÌÐòµÈ´ýÊäÈëÒ»¸öÊý×Ö£¬¿ÉÒÔ¿¼ÂÇʹÓà is_numeric() À´¼ì²é£¬»òÕßÖ±½ÓʹÓà settype() À´×ª»»ËüµÄÀàÐÍ£¬Ò²¿ÉÒÔÓà sprintf() °ÑËü¸ñʽ»¯ÎªÊý×Ö¡£
Àý 27-6. Ò»¸öʵÏÖ·ÖÒ³¸ü°²È«µÄ·½·¨
<?php
settype($offset, 'integer');
$query = "SELECT id, name from products ORDER BY name LIMIT 20 OFFSET $offset;";
// Çë×¢Òâ¸ñʽ×Ö·û´®ÖÐµÄ %d£¬Èç¹ûÓà %s ¾ÍºÁÎÞÒâÒåÁË
$query = sprintf("SELECT id, name from products ORDER BY name LIMIT 20 OFFSET %d;",
$offset);
?>
ʹÓÃÊý¾Ý¿âÌØ¶¨µÄÃô¸Ð×Ö·ûתÒ庯Êý£¨±ÈÈç mysql_escape_string() ºÍ sql_escape_string()£©°ÑÓû§Ìá½»ÉÏÀ´µÄ·ÇÊý×ÖÊý¾Ý½øÐÐתÒå¡£Èç¹ûÊý¾Ý¿âûÓÐרÃŵÄÃô¸Ð×Ö·ûתÒ
Ïà¹ØÎĵµ£º
ÔÚ½øÐÐÊý¾Ý¿â²éѯʱ£¬ÓÐÍêÕû²éѯºÍÄ£ºý²éѯ֮·Ö¡£
Ò»°ãÄ£ºýÓï¾äÈçÏ£º
SELECT ×Ö¶Î from ±í WHERE ij×Ö¶Î Like Ìõ¼þ
ÆäÖйØÓÚÌõ¼þ£¬SQLÌṩÁËËÄÖÖÆ¥Åäģʽ£º
1£¬%
£º±íʾÈÎÒâ0¸ö»ò¶à¸ö×Ö·û¡£¿ÉÆ¥Åä
ÈÎÒâÀàÐͺͳ¤¶ÈµÄ×Ö·û£¬ÓÐЩÇé¿öÏÂÈôÊÇÖÐÎÄ£¬ÇëʹÓÃÁ½¸ö°Ù·ÖºÅ£¨%%£©±íʾ
¡£
±È
Èç SELECT * from [user] WHERE u_ ......
˵µ½ÊÂÎñ£¬Ê×ÏÈÎÒÃǾÍÒªÖªµÀΪʲôÐèÒªÊÂÎñ£¬Õâ¾ÍÒªÏÈ¿´¿´Ëø»úÖÆµÄÏà¹Ø¸ÅÄ
ËøµÄ¸ÅÊö
Ò». ΪʲôҪÒýÈëËø
¶à¸öÓû§Í¬Ê±¶ÔÊý¾Ý¿âµÄ²¢·¢²Ù×÷ʱ»á´øÀ´ÒÔÏÂÊý¾Ý²»Ò»ÖµÄÎÊÌâ:
¶ªÊ§¸üÐÂ
A,BÁ½¸öÓû§¶ÁͬһÊý¾Ý²¢½øÐÐÐÞ¸Ä,ÆäÖÐÒ»¸öÓû§µÄÐ޸Ľá¹ûÆÆ»µÁËÁíÒ»¸öÐ޸ĵĽá¹û,±ÈÈ綩Ʊϵͳ&nb ......
ÎÒÔÚmy.cnfÖÐ×¢Ê͵ôlog-bin=mysql-binºÍbinlog_format=mixedºó,ÎÞ·¨Æô¶¯mysql
ÎÒÖØÆôvpsºó,ÄÜÆô¶¯mysqlÀ²
ÓÃweb·½Ê½ÔËÐÐphp,Õý³£
µ«ÊÇÔÚcrontabÀïÖ´ÐеÄphp½Å±¾,Ìáʾ: Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2) ²é¿´µ½/var/lib/mysql/Ŀ¼ÏÂ,ÓÐÒ»¸ömysql.s ......
1¡¢Ç°ÑÔ
·ÖÒ³ÏÔʾÊÇÒ»Öַdz£³£¼ûµÄä¯ÀÀºÍÏÔʾ´óÁ¿Êý¾ÝµÄ·½·¨£¬ÊôÓÚweb±à³ÌÖÐ×î³£´¦ÀíµÄʼþÖ®Ò»¡£¶ÔÓÚweb±à³ÌµÄÀÏÊÖÀ´Ëµ£¬±àдÕâÖÖ´úÂëʵÔÚÊǺͺôÎüÒ»Ñù×ÔÈ»£¬µ«ÊǶÔÓÚ³õѧÕßÀ´Ëµ£¬³£³£¶ÔÕâ¸öÎÊÌâÃþ²»×ÅÍ·Ð÷£¬Òò´ËÌØµØ×«Ð´´ËÎĶÔÕâ¸öÎÊÌâ½øÐÐÏêϸµÄ½²½â£¬Á¦ÇóÈÿ´ÍêÕâÆªÎÄÕµÄÅóÓÑÔÚ¿´ÍêÒÔºó¶ÔÓÚ·ÖÒ³ÏÔʾµÄÔÀíºÍʵÏÖ·½· ......
1.hqlÓësqlµÄÇø±ð
sql ÃæÏòÊý¾Ý¿â±í²éѯ
hql ÃæÏò¶ÔÏó²éѯ
hql £º from ºóÃæ¸úµÄ ÀàÃû£«Àà¶ÔÏó where ºó Óà ¶ÔÏóµÄÊôÐÔ×öÌõ¼þ
sql£º from ºóÃæ¸úµÄÊDZíÃû where ºó ÓñíÖÐ×Ö¶Î×öÌõ¼þ
²éѯ
&nbs ......