2011-12-25 172 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

相关问题