編寫上傳腳本
關於如何實現文件的上傳,我們在這裡就不再介紹了,感興趣的讀者可以參見「網頁陶吧」內的相關文章。現在,我們主要來看一下如何接收上傳文件並將其存入到MySQL數據庫中。具體的腳本代碼如下,其中我們假定文件上傳域的名稱為Picture。
這樣,我們就可以成功的把圖片保存到數據庫中。如果在將圖片插入MySQL的過程中出現問題,可以檢查一下MySQL數據庫所允許的最大數據包的大小。如果設置值過小的話,我們會在數據庫的錯誤日誌中找到相應的記錄。
下面,我們簡單說明一下上述腳本程序。首先,我們通過「If($Picture != "none")」檢查是否有文件被上傳。然後,使用addslashes()函數避免出現數據格式錯誤。最後,連接MySQL,選擇數據庫並插入圖片。
顯示圖片
在知道了如何將圖片存入數據庫之後,我們就需要考慮怎樣才能從數據庫中取出圖片並在HTML頁面中顯示出來。這個過程要稍微複雜一些,下面我們就來介紹一下實現過程。
因為PHP顯示圖片需要發送相應的標頭,所以我們就會面臨這樣一個問題,那就是一次只能顯示一副圖片,因為我們無法在發出標頭之後再發送其它的標頭。
為了有效的解決這一問題,我們編寫了兩個文件。其中,第一個文件作為HTML頁面的模板,定位圖片的顯示位置。第二個文件則被用來從數據庫中實際輸出文件流,作為標籤的SRC屬性。
第一個文件的簡單形式可以如下:
當HTML頁面被瀏覽時,每顯示一副圖片就會調用一次Second.php3文件。當第二個文件被調用時會傳入相應的Picture ID,我們可以借此從數據庫中取回對應的圖片並顯示。
Second.php3文件如下:
到此,我們就介紹完了使用PHP和MySQL保存和顯示圖片的全過程。文中所舉得都是一些最簡單的實例,讀者可以根據自己的實際需要加入其它一些功能,使整個程序更加完善。
亿速云「云数据库 MySQL」免部署即开即用,比自行安装部署数据库高出1倍以上的性能,双节点冗余防止单节点故障,数据自动定期备份随时恢复。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。
原文链接:http://blog.itpub.net/786540/viewspace-926552/