Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/286.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何将一批数据添加到mySQL中的一批数据中?_Php_Mysql - Fatal编程技术网

Php 如何将一批数据添加到mySQL中的一批数据中?

Php 如何将一批数据添加到mySQL中的一批数据中?,php,mysql,Php,Mysql,我将文件中的数据插入数据库: $sql = "INSERT INTO people (id,name,item1) values(?,?,?) "; $q = $pdo->prepare($sql); foreach($data as $row) { $q->execute(array($id, $row['name'], $row['item']); } 结果如下所示: ╔═════╦═══════╦═════════╦════════

我将文件中的数据插入数据库:

   $sql = "INSERT INTO people (id,name,item1) values(?,?,?) ";
   $q = $pdo->prepare($sql);

   foreach($data as $row) {
       $q->execute(array($id, $row['name'], $row['item']);  
   }
结果如下所示:

╔═════╦═══════╦═════════╦═════════╗
║ id  ║ name  ║  item1  ║  item2  ║
╠═════╬═══════╬═════════╬═════════╣
║ 12  ║ fred  ║ 24C8EI  ║         ║
║ 12  ║ alan  ║ 767CG5  ║         ║
║ 12  ║ tom   ║ 382F74  ║         ║
╚═════╩═══════╩═════════╩═════════╝
在这一步之前,一切正常

现在,我想用文件副本的数据更新数据库,以检查副本是否具有相同的内容。我想比较后面的item1和item2是否相同。我的尝试无效:

$sql = "UPDATE people SET item2 = ? WHERE id = 12";
$q = $pdo->prepare($sql);
foreach($data as $row) {
   $q->execute(array($row['item'], $id));
}
我想我有一些逻辑问题。我希望我的解释足以理解我想要实现的目标。

删除id=12;因为您在execute语句中传递了两个参数

是的

$id=12;// initlize you id
$sql = "UPDATE people SET item2 = ? WHERE id = ?";
$q = $pdo->prepare($sql);
foreach($data as $row) {
   $q->execute(array($row['item'], $id));
}

您好,谢谢,我按您所说的做了尝试,但仍然不起作用您好,我的结果是一个白色的空白页;ini设置“显示启动错误”,1;错误报告-1;为了检查pageHi中的错误,我把它写在我的页面顶部,但我仍然没有收到任何错误消息,只是一个白色页面。不幸的是,这是不可能的,它太长了