2011-12-25 215 views
0

如何從一個表中複製一行:'tipuranibasti'(一列是圖像的blob類型)到另一個表:'puranibasti'。用我的代碼,除了blob字段[image field]外,所有字段都被複制到puranibasti。如何將一行從一個表複製到另一個表

blob字段在數據庫中的puranibasti表中看起來像[BLOB - 0B]。

<?php 
include ("connect.php"); 
[email protected]($_GET['id']); 
[email protected]_query("select * from tipuranibasti where id = $id"); 
[email protected]_fetch_assoc($image); 

[email protected]$image_row['name']; 
[email protected]$image_row['date']; 
[email protected]$image_row['msg']; 
$image=addslashes(@file_get_contents($image_row['image'])); 


if(@mysql_query("insert into puranibasti values('','$name','$date','$msg','$image')")) 
{ 
echo "image has been inserted successfully"; 
} else 
{ 
echo "problem inserting the image"; 
} 
?> 

回答

2

你試過的代碼是什麼?我會說

UPDATE A INNER JOIN B ON A.some_id=B.some_id SET B.blobfield = A.blobfield 

更新:看你的代碼,這當然是一個不同的情況,因爲你已經在一個變量的內容。您可能會將其保留,然後執行上面我提出的更新。或者,也可以嘗試不使用addslashes。此外,您可能想嘗試使用適當的數據庫變量而不是連接字符串。由於blob字段的內容是二進制的,我可以想象當你把它們放入一個字符串時會發生醜陋的事情。

+0

謝謝你的回覆...我用另一個查詢作品:: insert into puranibasti select'',name,date,msg,image from tipuranibasti where id = $ id – tabi 2011-12-26 15:48:24

相關問題