如何为数组的每个元素插入数据库?

时间:2017-11-27 20:04:21

标签: php mysql arrays

我有预订系统,需要将详细信息插入mysql数据库。我的所有变量都是字符串,其中一个是数组 - 所以我需要为每个数组元素插入相同的信息($ ticketnumber)。我尝试过使用foreach循环,但它似乎不起作用。如何只使用一个INSERT语句来执行此操作,因为人们可能会选择不同数量的票来购买?

以下是代码的一部分:

<?php

$day = $_SESSION['date'];
$time = $_SESSION['time'];
$name = $_REQUEST['name'];
$ticketnumber = $_REQUEST['tickets']; //this is the array variable

foreach ($ticketnumber as $ticket){
    $sql = "INSERT INTO table VALUES ('$name', '$day', '$time', '$ticket');";
    $handle = $conn->prepare($sql);
    $handle->execute();

}
?>

在这种情况下,我的数组的值是(它取决于您检查的票数):

array(2) { [0]=> string(3) "010" [1]=> string(3) "011" }

这也与$ticket的值相匹配,为什么会发生这种情况?

我的会话和数据库连接在此之前建立。我也尝试用字符串替换数组变量,并且insert语句有效。

感谢任何帮助!

谢谢。

0 个答案:

没有答案