php upload 圖片到mysql

呢個係我係網上copy 落黎0既

<html>
<head>
<title>Upload File To MySQL Database</title>
<meta http-equiv="Content-Type" c>
<style type="text/css">
<!--
.box {

font-family: Arial, Helvetica, sans-serif;

font-size: 12px;

border: 1px solid #000000;
}
-->
</style>
</head>

<body>
<?
if(isset($_POST['upload']))
{

$fileName = $_FILES['userfile']['name'];

$tmpName  = $_FILES['userfile']['tmp_name'];

$fileSize = $_FILES['userfile']['size'];

$fileType = $_FILES['userfile']['type'];


$fp = fopen($tmpName, 'r');

$content = fread($fp, $fileSize);

$content = addslashes($content);

fclose($fp);


if(!get_magic_quotes_gpc())

{

$fileName = addslashes($fileName);

}



include 'library/config.php';

include 'library/opendb.php';


$query = "INSERT INTO upload (name, size, type, content ) VALUES ('$fileName', '$fileSize', '$fileType', '$content')";

mysql_query($query) or die('Error, query failed');



include 'library/closedb.php';


echo "<br>File $fileName uploaded<br>";
}
?>
<form action="" method="post" enctype="multipart/form-data" name="uploadform">
  <table width="350" border="0" cellpadding="1" cellspacing="1" class="box">
    <tr>
      <td width="246"><input type="hidden" name="MAX_FILE_SIZE" value="2000000"><input name="userfile" type="file" class="box" id="userfile">

</td>
      <td width="80"><input name="upload" type="submit" class="box" id="upload" value="  Upload  "></td>
    </tr>
  </table>
</form>
</body>
</html>

點解我揀左 file 再click upload時佢會話我"Error query failed", 但係如果唔揀file click upload 佢就會upload 一個空白record 上sql 0既?

我唔係好識php, 請指教, 謝謝!

is_uploaded_file()  - 檢查上載既檔案正確性,返回true/false

TOP

$content 唔搵野 (like base64) encode 左先?

TOP

建議唔好擺張圖入MySQL, 用番File吧.

TOP

係可以張圖放入MYSQL,但真得不建議,會使MySQL運行得非常慢。
你是用怎麼column type

TOP

原帖由 hoho1986 於 2008-9-26 00:27 發表
係可以張圖放入MYSQL,但真得不建議,會使MySQL運行得非常慢。
你是用怎麼column type

你 upload 左之後, 放係一個 Directory 入面, 而 MySQL 只係用黎記住個 PATH

TOP

原帖由 ioptional 於 2008-9-26 06:38 發表

你 upload 左之後, 放係一個 Directory 入面, 而 MySQL 只係用黎記住個 PATH


一般做法係咁, 但可能樓想BACKUP DB 時一次BACK晒, 以免忘記吧

好似係BOOL 定 BINRARY.  但樓上所說, 真的比較慢

TOP

提示: 作者被禁止或刪除 內容自動屏蔽

TOP

原帖由 adrianmak 於 2008-9-26 09:26 發表


對!!!!!!!!!
不懂的人才會將image 直接儲入db 入面

正確的做法是用個field 儲上傳image 的path
image 文件就係只簡單在server 上某個地方而已


MYSQL咁做確實唔可取..

我以前試過係MSSQL咁玩..
不過無咩大問題..

TOP

呢招的確係可以
但話比你聽,玩呢招係好晒時間
寫程式寫到嘔,而且仲要寫埋buffer page
但用db記path就會令program簡單d同埋db運作會無咁慢

TOP