CCC asked in 電腦與網際網路程式設計 · 1 decade ago

mysql存圖片

我不太了PHP的部分

麻煩一下幫我解釋程式的意思

我參考的是這個網頁http://bbs.ecstart.com/thread-12020-1-1.html

CREATE TABLE Images ( PicNum int NOT NULL AUTO_INCREMENT PRIMARY KEY, Image BLOB );

我已經建好了

我不懂下面PHP的部分 不知道要怎麼去連結mysql

<?PHP

If($Picture != "none")

{

$PSize = filesize($Picture);

$mysqlPicture = addslashes(fread(fopen($Picture, "r"), $PSize));

mysql_connect($host,$username,$password) or die("Unable to connect to SQL server");

@mysql_select_db($db) or die("Unable to select database");

mysql_query("INSERT INTO Images (Image) VALUES '($mysqlPicture')") or die("Can't Perform Query");

}

else echo"You did not upload any picture";

?>

----------------------------------------------------------------------------------------

<?PHP

//Second.php3

$result=mysql_query("SELECT * FROM Images WHERE PicNum=$PicNum") or die("Can't perform Query");

$row=mysql_fetch_object($result);

Header( "Content-type: image/gif");

echo $row

麻煩大大們指點一下

Update:

請問這錯誤是在說什麼?

Parse error: parse error, unexpected T_LNUMBER, expecting T_VARIABLE or '$' in C:\AppServ\www\1234.php on line 4

mysql_connect(主機,使用者帳號,密碼)都對

Update 2:

上面省略

@mysql_select_db($picture) or die("無法連到資料庫");

$result=mysql_query("SELECT * FROM Images") or die("Can't Perform Query");

While($row=mysql_fetch_object($result)) echo " PicNum\">";

?>

網頁出現無法連到資料庫 picture是我資料庫名

問題出在哪裡@@?

Update 3:

這個問題解決了 謝謝

再請問一下 我沒有略過教學網站 上傳的步驟

我是用phpMyAdmin

資料庫picture

資料表有

欄位 型態 值

PicNum int(11)

Image blob 這裡有個瀏覽的功能

圖片是用瀏覽功能上傳的

這樣做可行嗎!?

如果可行 我現在網頁可以連到資料庫

但是他無法顯示圖片

還是是跟網頁教學最下面second.php3有關

裡面程式碼有需要作更改嗎?

謝謝

Update 4:

sorry 上面有字打錯

是我略過教學網站 上傳的步驟

Update 5:

錯誤訊息只有顯示 X而已

我想請問這兩行的意思

$PSize = filesize($Picture);

$mysqlPicture = addslashes(fread(fopen($Picture, "r"), $PSize));

謝謝

Update 6:

解決了 謝謝

1 Answer

Rating
  • 1 decade ago
    Favorite Answer

    mysql_connect($host,$username,$password) or die("Unable to connect to SQL server");

    這行在連資料庫主機。

    用法:

    mysql_connect(主機,使用者帳號,密碼)

    @mysql_select_db($db) or die("Unable to select database");

    這行是連上資料庫後開啟指定的資料庫。

    用法:

    @mysql_select_db(資料庫名)

    註:在程式碼最前加入@符號是讓錯誤發生時,不會顯示錯誤訊息在網頁上。

    2010-03-08 23:44:47 補充:

    Parse error: parse error, unexpected T_LNUMBER, expecting T_VARIABLE or '$' in C:\\AppServ\\www\\1234.php on line 4

    是指你的程式碼有錯誤,在接近第四行的位置。可能是括號或$號放的位置不對。

    2010-03-10 10:15:56 補充:

    @mysql_select_db($picture) or die("無法連到資料庫");

    picture 是你資料庫名。

    $picture 是變數,不是字串。如果你要直接把資料庫放函數裡,那用雙引號括起來就好了。

    例:(假設我的資料庫名是myDatabase)

    $picture = myDatabase;

    @mysql_select_db($picture) or die("無法連到資料庫");

    @mysql_select_db("myDatabase") or die("無法連到資料庫");

    2010-03-11 10:09:31 補充:

    把完整的錯誤訊息貼上來比較方便別人幫你找問題。

    Source(s): 我自己, 我自已, 我自己
Still have questions? Get your answers by asking now.