【发布时间】:2018-07-24 20:27:17
【问题描述】:
在应用程序中,我有一个选择用户并选择课程 ID。我想要做的是为每个选择的用户我想在数据库中创建新记录 (MySQL)
已选择课程 ID。为了更好地解释它应该是这样的:
数据库:
在这种情况下,选择了 2 个用户和 2 个课程,因此创建了 4 条记录:
日期 |用户ID |课程_ID -----|---------|------------ 现在()|67A62 |12 -----|---------|------------ 现在()|220A0 |12 -----|---------|------------ 现在()|67A62 |8 -----|---------|------------ 现在()|220A0 |8我的代码:
在我的代码中,它并排遍历列表。因此列表中的第一个 user_id 将被分配列表中的第一个课程 ID。而不是我想要的 从 user_id 列表中为每个项目分配所有用户 (lesson_id) 在课程 ID 列表中
我当前的php 代码用于在 MySQL 数据库中存储值:
public function storeClass($attendees, $lesson_iDs) {
$stmt = $this->conn->prepare("INSERT INTO watch (date, user_id, lesson_id) VALUES(NOW(), ?, ?)");
$i = 0;
foreach ($attendees as $index => $attendee) {
$stmt->bind_param("ss", $attendees[$i], $lesson_iDs[$i]);
$i++;
$result = $stmt->execute();
// var_dump($i);
if(!$result){
echo 'Error: ' .$stmt->error;
}
}
$stmt->close();
// result
return $result;
}
是不是因为我有$stmt->bind_param("ss", attendees[$i], lesson_iDs[$i]);这一行
如何更改此代码以执行我需要它执行的操作?我在php 的经验很少,所以我问了这么糟糕的问题
【问题讨论】: