2012-10-21 128 views
0

我有记录的网格,他们有一个复选框<input name="id[]" value="<?php echo $valor->id ?>" type="checkbox" class="check" />,我想选择的记录复制到另一台如何在mysql中将数据从一个表插入到另一个表中?

$sql = "INSERT INTO `pendientes` SELECT * FROM clientes WHERE id = $idcopia"; 
mysql_query($sql); 

,但我不知道如何发送的ID,我的想法是选择复选框和一个按钮“复制”发送ID,但也许有另一种方式。

+0

你有与PHP,SQL问题或都?你的问题不是很明显。 –

+0

注意:您的代码是SQL注入式的。记住[Bobby Tables](http://xkcd.com/327/) – Sklivvz

回答

-1

大多数浏览器不发送复选框的值,只是字"on"。为了解决这个问题,你可以通过“价值”作为关键阵列:

<input type="checkbox" name="id[<?php echo $valor->id; ?>]" class="check" /> 

然后在PHP端:

$idlist = implode(",",array_map("intval",array_keys($_POST['id']))); 
$sql = "INSERT INTO `pendientes` SELECT * FROM `clientes` WHERE `id` IN (".$idlist.")"; 
mysql_query($sql); 
+0

感谢您的回答! 我创建了一个按钮 copy ,然后在PHP $ ID = $ _ GET [ 'ID']; $ sql =“INSERT INTO'pendientes' SELECT * FROM clientes WHERE'id' IN'$ id'”; $ conn = DataBase :: getInstance(); $ conn-> setQuery($ sql); $ conn-> execute(); mysql_close($ db); 我有另一个按钮来删除,它的工作,但不是与此,你可以看到代码中的错误? – Maru

+0

从什么时候开始“大多数浏览器”不发送数值?咦? –

相关问题