2012-09-25 75 views
3

我做我的PHP代碼如下:從MySQL數據庫中讀取的blob用PHP

$q="SELECT * FROM {$table} where x; 
$link = mysqli_connect("localhost", "test", "test","mytable"); 
$res = mysqli_query($link,$q); 
if($res) 
    { 
     $row = mysqli_fetch_assoc($res); 
     header("Content-type: text/xml"); 
     header("Content-Disposition: attachment; filename=$name"); 
     echo $row['blob']; 
    } 

我可以看到我上傳到MySQL數據庫中的數據(XML文件)不具有任何前導空格,但是當我運行上面的代碼3個新行並出現一個空格,並且該文件不再適當地形成xml。 任何想法爲什麼確切的內容不被從表中讀取?

+0

你在MySQL數據庫中查看是否有新的行字符,這將排除腳本作爲一個問題。 XML如何不能很好地形成。你的意思是有標籤缺失等,或者你的意思是瀏覽器不再將XML解釋爲XML。或者你的意思是它沒有正確縮進? – Chris

+0

將XML存儲爲文本,blob用於存儲二進制數據。在該說明中,不要存儲XML .. – wesside

+0

XML解析錯誤:XML或文本聲明不在實體的起始處 行號3,列2: – icedek

回答

2

想通out.A愚蠢的錯誤。 我的開放的PHP標籤開始第3行第2列

> <?php 

和所作的「迴響」從同一行開始(第3行第2列)。 這是回聲應該如何工作?

0

您應該調查,其中額外的新行的來源,但你可以通過運行得到解決你的問題:

trim($row['blob']); 
+0

trim($ row ['blob'] );沒有任何效果。我得到同樣的錯誤 – icedek