¡¡¡¡Èç¹ûÄãÏë°Ñ¶þ½øÖƵÄÊý¾Ý,±ÈÈç˵ͼƬÎļþºÍHtmlÎļþ,Ö±½Ó±£´æÔÚÄãµÄmysqlÊý¾Ý¿â£¬ÄÇôÕâƪÎÄÕ¾ÍÊÇΪÄã¶øдµÄ£¡ ¡¡¡¡ÎÒ½«¸æËßÄãÔõÑùͨ¹ýHTML±íµ¥À´´¢´æÕâЩÎļþ£¬ÔõÑù·ÃÎʺÍʹÓÃÕâЩÎļþ¡£ ¡¡¡¡¡¡¡¡
±¾ÎĸÅÊö£º¡¡¡¡ÔÚmysqlÖн¨Á¢Ò»¸öеÄÊý¾Ý¿â ¡¡¡¡Ò»¸öÔõÑù´¢´æÎļþµÄÀý×Ó³ÌÐò ¡¡¡¡Ò»¸öÔõÑù·ÃÎÊÎļþµÄÀý×Ó³ÌÐò ¡¡¡¡¡¡¡¡ÔÚmysqlÖн¨Á¢Ò»¸öеÄdatabase ¡¡¡¡Ê×ÏÈ£¬Äã±ØÐëÔÚÄãµÄmysqlÖн¨Á¢Ò»¸öеÄÊý¾Ý¿â£¬ÎÒÃǽ«»á°ÑÄÇЩ¶þ½øÖÆÎļþ´¢´æÔÚÕâ¸öÊý¾Ý¿âÀï¡£ÔÚÀý×ÓÖÐÎÒ»áʹÓÃÏÂÁнṹ£¬ÎªÁ˽¨Á¢Êý¾Ý¿â£¬Äã±ØÐë×öÏÂÁв½Ö裺 ¡¡¡¡¡¡¡¡½øÈëMySql¿ØÖÆÆ÷ ¡¡¡¡ÊäÈëÃüÁî"create database binary_data;" ¡¡¡¡ÊäÈëÃüÁî"use binary_data;" ¡¡¡¡ÊäÈëÃüÁî"CREATE TABLE binary_data ( id INT(4) NOT NULL AUTO_INCREMENT PRIMARY KEY, ¡¡¡¡description CHAR(50), bin_data LONGBLOB, filename CHAR(50), filesize CHAR(50), filetype CHAR(50));" £¨²»ÄܶÏÐУ© ¡¡¡¡Èç¹ûûÓÐÒâÍ⣬Êý¾Ý¿â ºÍ ±í Ó¦¸Ã½¨Á¢ºÃÁË¡£ ¡¡¡¡Ò»¸öÔõÑù´¢´æÎļþµÄÀý×Ó³ÌÐò ÓÃÕâ¸öÀý×ÓÄã¿ÉÒÔͨ¹ýHtml±íµ¥½«Îļþ´«Êäµ½Êý¾Ý¿âÖС£. ¡¡¡¡¡¡¡¡store.PHP3 ¡¡¡¡¡¡¡¡?php ¡¡¡¡¡¡¡¡// store.php3 - by Florian Dittmer
[email protected]> ¡¡¡¡?> ¡¡¡¡¡¡¡¡HTML> ¡¡¡¡HEAD>TITLE>Store binary data into SQL Database/TITLE>/HEAD> ¡¡¡¡BODY> ¡¡¡¡¡¡¡¡?php ¡¡¡¡// Èç¹ûÌá½»ÁË±íµ¥£¬´úÂ뽫±»Ö´ÐÐ: ¡¡¡¡¡¡¡¡if ($submit) { ¡¡¡¡¡¡¡¡// Á¬½Óµ½Êý¾Ý¿â ¡¡¡¡// (Äã¿ÉÄÜÐèÒªµ÷ÕûÖ÷»úÃû£¬Óû§ÃûºÍÃÜÂë) ¡¡¡¡¡¡¡¡MYSQL_CONNECT( "localhost", "root", "passWord"); ¡¡¡¡mysql_select_db( "binary_data"); ¡¡¡¡¡¡¡¡$data = addslashes(fread(fopen($form_data, "r"), filesize($form_data))); ¡¡¡¡¡¡¡¡$result=MYSQL_QUERY( "INSERT INTO binary_data (description,bin_data,filename,filesize,filetype) ". ¡¡¡¡"VALUES ('$form_description','$data','$form_data_name','$form_data_size','$form_data_type')"); ¡¡¡¡¡¡¡¡$id= mysql_insert_id(); ¡¡¡¡print "p>This file has the following Database ID: b>$id/b>"; ¡¡¡¡¡¡¡¡MYSQL_CLOSE(); ¡¡¡¡¡¡¡¡} else { ¡¡¡¡¡¡¡¡// ·ñÔòÏÔʾ´¢´æÐÂÊý¾ÝµÄ±íµ¥ ¡¡¡¡?> ¡¡¡¡¡¡¡¡form method="post" action=" ?php echo $PHP_SELF; ?>" enctype="multipart/form-data"> ¡¡¡¡File Description:br> ¡¡¡¡input type="text" name="form_description" size="40"> ¡¡¡¡INPUT TYPE="hidden" name="MAX_FILE_SIZE" value="1000000"> ¡¡¡¡br>File to upload/store in database:br> ¡¡¡¡input type="file" name="form_data" size="40"> ¡¡¡¡p>input type="submit" name="submit" value="submit"> ¡¡¡¡/form> ¡¡¡¡¡¡¡¡?php ¡¡¡¡¡¡¡¡} ¡¡¡¡?> ¡¡¡¡¡¡¡¡/BODY> ¡¡¡¡/HTML> ¡¡¡¡¡¡¡¡Èç¹ûÄãÖ´ÐÐÁËÕâ¸ö³ÌÐò£¬Ä㽫»á¿´¼ûÒ»¸ö¼òµ¥µÄHtml±íµ¥£¬µ¥»÷¡°ä¯ÀÀ¡±Ñ¡ÔñÒ»¸öÎļþ£¬È»ºóµ¥»÷Ìá½»¡£ ¡¡¡¡¡¡¡¡µ±ÎļþÉÏ´«ÖÁweb·þÎñÆ÷Ö®ºó£¬³ÌÐò½«»á¸æËßÄã¸Õ¸ÕÉÏ´«µÄÎļþµÄID£¬¼ÇסÕâ¸öID£¬´ý»áÒªÓõġ£ ¡¡¡¡¡¡¡¡Ò»¸öÔõÑù·ÃÎÊÎļþµÄÀý×Ó³ÌÐò ¡¡¡¡¡¡¡¡Äã¿ÉÒÔͨ¹ýÕâ¸ö³ÌÐò·ÃÎÊÄã¸Õ²Å´¢´æµÄÎļþ ¡¡¡¡¡¡¡¡?php ¡¡¡¡¡¡¡¡// getdata.php3 - by Florian Dittmer
[email protected]> ¡¡¡¡// µ÷Ó÷½·¨: getdata.php3?id=id> ¡¡¡¡¡¡¡¡if($id) { ¡¡¡¡¡¡¡¡// Äã¿ÉÄÜÐèÒªµ÷ÕûÖ÷»úÃû£¬Óû§ÃûºÍÃÜÂë: ¡¡¡¡@MYSQL_CONNECT( "localhost", "root", "password"); ¡¡¡¡¡¡¡¡@mysql_select_db( "binary_data"); ¡¡¡¡¡¡¡¡$query = "select bin_data,filetype from binary_data where id=$id"; ¡¡¡¡$result = @MYSQL_QUERY($query); ¡¡¡¡¡¡¡¡$data = @MYSQL_RESULT($result,0, "bin_data"); ¡¡¡¡$type = @MYSQL_RESULT($result,0, "filetype"); ¡¡¡¡¡¡¡¡Header( "Content-type: $type"); ¡¡¡¡echo $data; ¡¡¡¡¡¡¡¡}; ¡¡¡¡?> ¡¡¡¡³ÌÐò±ØÐëÖªµÀÒª·ÃÎÊÄǸöÎļþ£¬ Äã±ØÐ뽫ID×÷Ϊһ¸ö²ÎÊý¡£ ¡¡¡¡ÀýÈç: Ò»¸öÎļþÔÚÊý¾Ý¿âÖеÄIDΪ2. Äã¿ÉÒÔÕâÑùµ÷ÓÃËü: ¡¡¡¡¡¡¡¡getdata.php3?id=2Èç¹ûÄ㽫ͼƬ´¢´æÔÚÊý¾Ý¿âÀï, Äã¿ÉÒÔÏòµ÷ÓÃͼƬһÑùµ÷ÓÃËü¡£ ¡¡¡¡Example: Ò»¸öͼƬÎļþÔÚÊý¾Ý¿âÖеÄIDΪ3. Äã¿ÉÒÔÕâÑùµ÷ÓÃËü: ¡¡¡¡img src="getdata.php3?id=3"> ¡¡¡¡ÔõÑù´¢´æ´óÓÚ1MBµÄÎļþ: ¡¡¡¡Èç¹ûÄãÏë´¢´æ´óÓÚ1MBµÄÎļþ£¬Äã±ØÐë¶ÔÄãµÄ³ÌÐò¡¢PHPÉèÖá¢SQLÉèÖýøÐÐÐí¶àÐ޸ģ¬¡¡¡¡ÏÂÃ漸ÌõÒ²Ðí¿ÉÒÔ°ïÖúÄã´¢´æСÓÚ24MBµÄÎļþ£º ¡¡¡¡¡¡¡¡ÐÞ¸Ä store.php3 £¬½« MAX_FILE_SIZE µÄÖµ¸Ä³É 24000000¡£ ¡¡¡¡ÐÞ¸ÄÄãµÄPHPÉèÖã¬ÔÚÒ»°ãÇé¿öÏ£¬PHPÖ»ÔÊÐíСÓÚ2MBµÄÎļþ£¬Äã±ØÐ뽫max_filesize£¨ÔÚphp.iniÖУ©µÄÖµ¸Ä³É24000000 ¡¡¡¡¡¡¡¡È¥µôMYSQLµÄÊý¾Ý°ü´óСÏÞÖÆ,ÔÚÒ»°ãÇé¿öÏ MYSQL СÓÚ1 MBµÄÊý¾Ý°ü. ¡¡¡¡Äã±ØÐëÓÃÒÔϲÎÊýÖØÆôÄãµÄMYSQL ¡¡¡¡/usr/local/bin/safe_mysqld -O key_buffer=16M -O table_cache=128 -O sort_buffer=4M -O record_buffer=1M -O max_allowed_packet=24M ¡¡¡¡¡¡¡¡Èç¹ûÈÔÈ»³ö´í£º ¡¡¡¡¿ÉÄÜÊdz¬Ê±´íÎó£¬Èç¹ûÄãͨ¹ýÒ»¸öºÜÂýµÄÁ¬½ÓÀ´´¢´æÒ»¸öºÜ´óµÄÎļþ£¬PHPȱʡµÄʱ¼äÏÞÖÆΪ30Ãë¡£ ¡¡¡¡Äã¿ÉÒÔ½«max_execution_time(ÔÚphp.iniÖÐ)µÄÖµ¸ÄΪ-1
[1] [2] ÏÂÒ»Ò³
£¨³ö´¦£ºhttp://www.sheup.com£©
ÉÏÒ»Ò³ [1] [2]