亚洲韩日午夜视频,欧美日韩在线精品一区二区三区,韩国超清无码一区二区三区,亚洲国产成人影院播放,久草新在线,在线看片AV色

您好,歡迎來到思海網絡,我們將竭誠為您提供優質的服務! 誠征網絡推廣 | 網站備案 | 幫助中心 | 軟件下載 | 購買流程 | 付款方式 | 聯系我們 [ 會員登錄/注冊 ]
促銷推廣
客服中心
業務咨詢
有事點擊這里…  531199185
有事點擊這里…  61352289
點擊這里給我發消息  81721488
有事點擊這里…  376585780
有事點擊這里…  872642803
有事點擊這里…  459248018
有事點擊這里…  61352288
有事點擊這里…  380791050
技術支持
有事點擊這里…  714236853
有事點擊這里…  719304487
有事點擊這里…  1208894568
有事點擊這里…  61352289
在線客服
有事點擊這里…  531199185
有事點擊這里…  61352288
有事點擊這里…  983054746
有事點擊這里…  893984210
當前位置:首頁 >> 技術文章 >> 文章瀏覽
技術文章

如何在MySQL數據庫中直接儲存圖片

添加時間:2013-9-22 19:55:30  添加: 思海網絡 

如果你想把二進制的數據,比如說圖片文件和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,deion CHAR(50), bin_data LONGBLOB, filename CHAR(50), filesize CHAR(50), filetype CHAR(50));" (不能斷行)

如果沒有意外,數據庫和表應該建立好了。

一個怎樣儲存文件的例子程序 用這個例子你可以通過Html表單將文件傳輸到數據庫中。

store.PHP3 以下為引用的內容:

以下為引用的內容:

 <?PHP 

// store.PHP3 - by Florian Dittmer <dittmer@gmx.net> 
?> 

<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 (deion,bin_data,filename,filesize,filetype) ". 
      "VALUES (’$form_deion’,’$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 Deion:<br> 
  <input type="text" name="form_deion" 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 <dittmer@gmx.net> 
// 調用方法: 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

關鍵字:MySQL、數據庫、圖片

分享到:

頂部 】 【 關閉
版權所有:佛山思海電腦網絡有限公司 ©1998-2024 All Rights Reserved.
聯系電話:(0757)22630313、22633833
中華人民共和國增值電信業務經營許可證: 粵B1.B2-20030321 備案號:粵B2-20030321-1
網站公安備案編號:44060602000007 交互式欄目專項備案編號:200303DD003  
察察 工商 網安 舉報有獎  警警  手機打開網站