我有php PDO查询,我希望只用一个service_id
插入几个user_id
代码:
$user_id = 1 ;
$db = new PDO('mysql:host='.$servername.'; dbname='.$db_name.';charset=utf8' , $db_username, $db_password);
for($r=1;$r <= 10 ;$r++ )
{
$extra_services_item = 'extra_services_item'.$r ;
if(isset($_POST[$extra_services_item]))
{
$service_id = test_input( $_POST[$extra_services_item] ) ;
$ins_new_pro_q= "insert into `user_services` (user_id,service_id) values ('$user_id','$service_id') ";
$ins_new_pro = $db -> prepare($ins_new_pro_q);
$ins_new_pro -> execute() ;
}
}
但它只是插入第一个service_id
我该怎么做?
答案 0 :(得分:1)
首先,您可能希望将PDO对象创建移出循环之外,因为您可以使用相同的对象,并且对MySQL服务器的连接请求会更少。
其次,表中的任何字段都是主键吗?如果是这样,哪一个?