¡¡Êý¾Ý¿âÊÇWEB´ó¶àÊýÓ¦Óÿª·¢µÄ»ù´¡¡£Èç¹ûÄãÊÇÓÃPHP£¬ÄÇô´ó¶àÊý¾Ý¿âÓõÄÊÇMYSQLÒ²ÊÇLAMP¼Ü¹¹µÄÖØÒª²¿·Ö¡£
¡¡¡¡PHP¿´ÆðÀ´ºÜ¼òµ¥£¬Ò»¸ö³õѧÕßÒ²¿ÉÒÔ¼¸¸öСʱÄÚ¾ÍÄÜ¿ªÊ¼Ð´º¯ÊýÁË¡£µ«Êǽ¨Á¢Ò»¸öÎȶ¨¡¢¿É¿¿µÄÊý¾Ý¿âÈ·ÐèҪʱ¼äºÍ¾Ñé¡£ÏÂÃæ¾ÍÊÇһЩÕâÑùµÄ¾Ñ飬²»½ö½öÊÇMYSQL£¬ÆäËûÊý¾Ý¿âÒ²Ò»Ñù¿ÉÒԲο¼¡£ ¡¡¡¡1¡¢Ê¹ÓÃMyISAM¶ø²»ÊÇInnoDB ¡¡¡¡MySQLÓкܶàµÄÊý¾Ý¿âÒýÇ棬µ¥Ò»°ãÒ²¾ÍÓÃMyISAMºÍInnoDB¡£ ¡¡¡¡MyISAMÊÇĬÈÏʹÓõġ£µ«Êdzý·ÇÄãÊǽ¨Á¢Ò»¸ö·Ç³£¼òµ¥µÄÊý¾Ý¿â»òÕßÖ»ÊÇʵÑéÐԵģ¬ÄÇôµ½´ó¶àÊýʱºòÕâ¸öÑ¡ÔñÊÇ´íÎóµÄ¡£MyISAM²»Ö§³ÖÍâ¼üµÄÔ¼Êø£¬ÕâÊDZ£Ö¤Êý¾ÝÍêÕûÐԵľ«»ªËùÔÚ°¡¡£ÁíÍ⣬MyISAM»áÔÚÌí¼Ó»òÕ߸üÐÂÊý¾ÝµÄʱºò½«Õû¸ö±íËøס£¬ÕâÔÚÒÔºóµÄÀ©Õ¹ÐÔÄÜÉÏ»áÓкܴóµÄÎÊÌâ¡£ ¡¡¡¡½â¾ö°ì·¨ºÜ¼òµ¥£ºÊ¹ÓÃInnoDB¡£ ¡¡¡¡2¡¢Ê¹ÓÃPHPµÄmysql·½·¨ ¡¡¡¡PHP´ÓÒ»¿ªÊ¼¾ÍÌṩÁËMySQLµÄº¯Êý¿â¡£ºÜ¶à³ÌÐò¶¼ÒÀÀµÓÚmysql_connect¡¢mysql_query¡¢mysql_fetch_assocµÈµÈ£¬µ«ÊÇPHPÊÖ²áÖн¨Ò飺 ¡¡¡¡Èç¹ûÄãʹÓõÄMySQL°æ±¾ÔÚ4.1.3Ö®ºó£¬ÄÇôǿÁÒ½¨ÒéʹÓÃmysqliÀ©Õ¹¡£ ¡¡¡¡mysqli£¬»òÕß˵MySQLµÄ¸ß¼¶À©Õ¹£¬ÓÐһЩÓŵ㣺 ¡¡¡¡ÓÐÃæÏò¶ÔÏóµÄ½Ó¿Ú ¡¡¡¡prepared statements(Ô¤´¦ÀíÓï¾ä£¬¿ÉÒÔÓÐЧ·ÀÖ¹SQL-×¢Èë¹¥»÷£¬»¹ÄÜÌá¸ßÐÔÄÜ) ¡¡¡¡Ö§³Ö¶àÖÖÓï¾äºÍÊÂÎñ ¡¡¡¡ÁíÍ⣬Èç¹ûÄãÏëÖ§³Ö¶àÊý¾Ý¿âÄÇôӦ¸Ã¿¼ÂÇÒ»ÏÂPDO¡£ ¡¡¡¡3¡¢²»¹ýÂËÓû§ÊäÈë ¡¡¡¡Ó¦¸ÃÊÇ£ºÓÀÔ¶±ðÏàÐÅÓû§µÄÊäÈë¡£Óúó¶ËµÄPHPÀ´Ð£Ñé¹ýÂËÿһÌõÊäÈëµÄÐÅÏ¢£¬²»ÒªÏàÐÅJavascript¡£ÏñÏÂÃæÕâÑùµÄSQLÓï¾äºÜÈÝÒ׾ͻᱻ¹¥»÷£º
¡¡¡¡$username = $_POST["name"]; ¡¡¡¡$password = $_POST["password"]; ¡¡¡¡$sql = "SELECT userid FROM usertable WHERE username='$username'AND password='$password';"; // run query...
¡¡¡¡ÕâÑùµÄ´úÂ룬Èç¹ûÓû§ÊäÈë”admin’;”ÄÇô£¬¾ÍÏ൱ÓÚÏÂÃæÕâÌõÁË£º
¡¡¡¡SELECT userid FROM usertable WHERE username='admin';
¡¡¡¡ÕâÑùÈëÇÖÕß¾ÍÄܲ»ÊäÈëÃÜÂ룬¾Íͨ¹ýadminÉí·ÝµÇ¼ÁË¡£ ¡¡¡¡4¡¢²»Ê¹ÓÃUTF-8 ¡¡¡¡ÄÇЩӢÃÀ¹ú¼ÒµÄÓû§£¬ºÜÉÙ¿¼ÂÇÓïÑÔµÄÎÊÌ⣬ÕâÑù¾ÍÔì³ÉºÜ¶à²úÆ·¾Í²»ÄÜÔÚÆäËûµØ·½Í¨Ó᣻¹ÓÐһЩGBK±àÂëµÄ£¬Ò²»áÓкܶàµÄÂé·³¡£ ¡¡¡¡UTF-8½â¾öÁ˺ܶà¹ú¼Ê»¯µÄÎÊÌâ¡£ËäÈ»PHP6²ÅÄܱȽÏÍêÃÀµÄ½â¾öÕâ¸öÎÊÌ⣬µ«ÊÇÒ²²»·Á°Ä㽫MySQLµÄ×Ö·û¼¯ÉèÖÃΪUTF-8¡£ ¡¡¡¡5¡¢¸ÃÓÃSQLµÄµØ·½Ê¹ÓÃPHP ¡¡¡¡Èç¹ûÄã¸Õ½Ó´¥MySQL£¬ÓÐʱºò½â¾öÎÊÌâµÄʱºò¿ÉÄÜ»áÏÈ¿¼ÂÇʹÓÃÄãÊìϤµÄÓïÑÔÀ´½â¾ö¡£ÕâÑù¾Í¿ÉÄÜÔì³ÉһЩÀ˷ѺÍÐÔÄܱȽϲîµÄÇé¿ö¡£±ÈÈ磺¼ÆËãƽ¾ùÖµµÄʱºò²»ÊÊÓÃMySQLÔÉúµÄAVG()·½·¨£¬¶øÊÇÓÃPHP½«ËùÓÐֵѻ·Ò»±éÈ»ºóÀÛ¼Ó¼ÆËãƽ¾ùÖµ¡£ ¡¡¡¡ÁíÍ⻹ҪעÒâSQL²éѯÖеÄPHPÑ»·¡£Í¨³££¬ÔÚÈ¡µÃËùÓнá¹ûÖ®ºóÔÙÓÃPHPÀ´Ñ»·µÄЧÂʸü¸ß¡£ ¡¡¡¡Ò»°ãÔÚ´¦Àí´óÁ¿Êý¾ÝµÄʱºòʹÓÃÇ¿ÓÐÁ¦µÄÊý¾Ý¿â·½·¨£¬¸üÄÜÌá¸ßЧÂÊ¡£ ¡¡¡¡6¡¢²»ÓÅ»¯²éѯ ¡¡¡¡99%µÄPHPÐÔÄÜÎÊÌⶼÊÇÊý¾Ý¿âÔì³ÉµÄ£¬Ò»ÌõÔã¸âµÄSQLÓï¾ä¿ÉÄÜÈÃÄãµÄÕû¸ö³ÌÐò¶¼·Ç³£Âý¡£MySQLµÄEXPLAIN statement£¬Query Profiler£¬many other toolsµÄÕâЩ¹¤¾ß¿ÉÒÔ°ïÄãÕÒ³öÄÇЩµ÷ƤµÄSELECT¡£ ¡¡¡¡7¡¢Ê¹ÓôíÎóµÄÊý¾ÝÀàÐÍ ¡¡¡¡MySQLÌṩһϵÁÐÊý×Ö¡¢×Ö·û´®¡¢Ê±¼äµÈµÄÊý¾ÝÀàÐÍ¡£Èç¹ûÄãÏë´æ´¢ÈÕÆÚ£¬ÄÇô¾ÍÊÇÓÃDATE»òÕßDATETIMEÀàÐÍ£¬Ê¹ÓÃÕûÐλòÕß×Ö·û´®»áÈÃÊÂÇé¸ü¼Ó¸´ÔÓ¡£ ¡¡¡¡ÓÐʱºòÄãÏëÓÃ×Ô¼º¶¨ÒåµÄÊý¾ÝÀàÐÍ£¬ÀýÈ磬ʹÓÃ×Ö·û´®´æ´¢ÐòÁл¯µÄPHP¶ÔÏó¡£Êý¾Ý¿âµÄÌí¼Ó¿ÉÄܺÜÈÝÒ×£¬µ«ÊÇÕâÑùµÄ»°£¬MySQL¾Í»á±äµÃºÜ±¿ÖØ£¬¶øÇÒÒÔºó¿ÉÄܵ¼ÖÂһЩÎÊÌâ¡£ ¡¡¡¡8¡¢ÔÚSELECT²éѯÖÐʹÓÃ* ¡¡¡¡²»ÒªÊ¹ÓÃ*ÔÚ±íÖзµ»ØËùÓеÄ×ֶΣ¬Õâ»á·Ç³£µÄÂý¡£ÄãÖ»ÐèҪȡ³öÄãÐèÒªµÄÊý¾Ý×ֶΡ£Èç¹ûÄãÐèҪȡ³öËùÓеÄ×ֶΣ¬ÄÇô¿ÉÄÜÄãµÄ±íÐèÒª¸ü¸ÄÁË¡£ ¡¡¡¡9¡¢Ë÷Òý²»×ã»òÕß¹ý¶ÈË÷Òý ¡¡¡¡Ò»°ãÀ´Ëµ£¬Ó¦¸ÃË÷Òý³öÏÖÔÚSELECTÓï¾äÖÐWHEREºóÃæËùÓеÄ×ֶΡ£ ¡¡¡¡ÀýÈ磬¼ÙÈçÎÒÃǵÄÓû§±íÓÐÒ»¸öÊý×ÖµÄID(Ö÷¼ü)ºÍemailµØÖ·¡£µÇ¼֮ºó£¬MySQLÓ¦¸Ãͨ¹ýemailÕÒµ½ÏàÓ¦µÄID¡£Í¨¹ýË÷Òý£¬MySQL¿ÉÒÔͨ¹ýËÑË÷Ëã·¨ºÜ¿ìµÄ¶¨Î»email¡£Èç¹ûûÓÐË÷Òý£¬MySQL¾ÍÐèÒª¼ì²éÿһÏî¼Ç¼ֱµ½ÕÒµ½¡£ ¡¡¡¡ÕâÑùµÄ»°£¬Äã¿ÉÄÜÏë¸øÿһ¸ö×ֶζ¼Ìí¼ÓË÷Òý£¬µ«ÊÇÕâÑù×öµÄºó¹û¾ÍÊÇÔÚÄã¸üлòÕßÌí¼ÓµÄʱºò£¬Ë÷Òý¾Í»áÖØÐÂ×öÒ»±é£¬µ±Êý¾ÝÁ¿´óµÄʱºò£¬¾Í»áÓÐÐÔÄÜÎÊÌâ¡£ËùÒÔ£¬Ö»ÔÚÐèÒªµÄ×Ö¶Î×öË÷Òý¡£ ¡¡¡¡10¡¢²»±¸·Ý ¡¡¡¡Ò²Ðí²»³£·¢Éú£¬µ«ÊÇÊý¾Ý¿âËð»Ù£¬Ó²ÅÌ»µÁË¡¢·þÎñÍ£Ö¹µÈµÈ£¬ÕâЩ¶¼»á¶ÔÊý¾ÝÔì³ÉÔÖÄÑÐÔµÄÆÆ»µ¡£ËùÒÔÄãÒ»¶¨ÒªÈ·±£×Ô¶¯±¸·ÝÊý¾Ý»òÕß±£´æ¸±±¾¡£ ¡¡¡¡11¡¢ÁíÍ⣺²»¿¼ÂÇÆäËûÊý¾Ý¿â ¡¡¡¡MySQL¿ÉÄÜÊÇPHPÓõÄ×î¶àµÄÊý¾Ý¿âÁË£¬µ«ÊÇÒ²²»ÊÇΨһµÄÑ¡Ôñ¡£ PostgreSQLºÍFirebirdÒ²ÊǾºÕùÕߣ¬ËûÃǶ¼¿ªÔ´£¬¶øÇÒ²»±»Ä³Ð©¹«Ë¾Ëù¿ØÖÆ¡£Î¢ÈíÌṩSQL Server Express£¬OracleÓÐ10g Express£¬ÕâЩÆóÒµ¼¶µÄÒ²ÓÐÃâ·Ñ°æ¡£SQLite¶ÔÓÚһЩСÐ͵ĻòÕßǶÈëʽӦÓÃÀ´ËµÒ²ÊDz»´íµÄÑ¡Ôñ¡£ (ÔðÈα༣ºadmin) |