2011-05-02 35 views
1

我無法上傳使用Photoshop和PDFTK創建的pdf文檔。其他pdf文件正在上傳沒有任何問題。將pdf文件上傳到Mysql服務器

我收到以下警告:

fread():提供的參數不是在

警告一個 有效的流資源:fclose():提供的參數 是不是一個有效的流資源

回答

2

我不會建議將PDF上傳到MySQL - 您必須將其保存爲BLOB,然後讀取BLOB。這會使數據庫迅速膨脹並導致速度問題。

而是將PDF上傳到文件系統,然後將PATH保存到MySQL中的PDF中。然後你可以從MySQL讀取這條路徑。

但是,如果你絕對需要將文件保存爲BLOB - 這裏是一個很好的教程,這樣做: http://bytes.com/topic/php/insights/740327-uploading-files-into-mysql-database-using-php

+1

@Avisra,在數據庫中保存的一個好處是,你不能失去應有的那些文件重命名等,因此保存在數據庫中可能是一個好主意,在這個問題上意見不一。性能明智,但你是對的。 – Johan 2011-05-02 17:38:08

+0

對不起,我只通過將BLOB保存爲BLOB來上傳它們。這裏的問題是我上傳從Photoshop和PDFTK創建的PDF時出現警告。 – Sanch 2011-05-02 17:43:15

+0

這是一個很好的觀點。我見過內容管理系統(如Sitefinity)使用相同的方法。它將文檔保存爲BLOB,然後將它們讀入。真正很酷的是支持它的某種緩存系統。如果文件內容或路徑尚未更改 - 從服務器上的緩存文件讀取。否則,從MySQL讀入BLOB並重新緩存它。 – Avisra 2011-05-02 17:45:56