php - 插入数组并在 PhpMyAdmin 中显示值

标签 php mysql arrays database

我使用复选框来查看用户是否想要“早餐、晚餐和晚餐”

这是我的代码

<div id="checkboxesFood">
                <p>Please select if you want breakfast, dinner and supper</p>
                <input type="checkbox" class="food" name="foodboxes[]" value="Breakfast"/>Breakfast
                <input type="checkbox" class="food" style="margin:0 0 0 19%;" name="foodboxes[]" value="Dinner"/>Dinner
                <input type="checkbox" class="food" style="margin:0 0 0 19%;" name="foodboxes[]" value="Supper"/>Supper
            </div>

我正在使用 PHP 连接到数据库并将值存储在那里。

这是我的 PHP 代码

$username = $_POST['userName']; //Username
$view = $_POST['roomChoice'];   //View Of Room
$paymentMethod = $_POST['payment']; //How user want's to pay
$selectedFood = $_POST['foodboxes'];    //Food they have selected(Breakfast, Dinner or Supper)
//$foodData = array($selectedFood);
$con = new mysqli('localhost','username','mypw','DB');

if($con->connect_error){
die("Connection failed: " .$con->connect_error);
}
//$implodedData = implode(",",$foodData);
$sql = "INSERT INTO Hotellbokning(Name,Room,Food,Payment) VALUES('$username','$view','$implodedData','$paymentMethod')";


if($con->query($sql) == true){
    echo "You did it John!";
}
else{
   echo "Error: " . $sql . "<br/>" .$con->error;
}

忽略那些不是问题的变量即可。当我将此数组 $selectedFood 插入数据库时​​,我在 Food 字段中收到值“Array”。

有没有办法在 PhpMyAdmin 中查看该数组的值(早餐、晚餐和晚餐这三个值),或者只能从我的数据库中回显它们?

附注我尝试使用内爆,但没有成功。我也尝试过 $foodData = array($selectedFood) 但它也不起作用。

最佳答案

你搞错了事情。 $selectedFood 已经是一个数组,您不需要将其包装在另一个数组中。所以应该是:

$implodedData = implode(',', $selectedFood);

然后您可以将$implodedData存储在数据库中。

但是,将逗号分隔的列表放入数据库通常是糟糕的设计。您应该使用关系表,其中每个项目都有单独的行。

关于php - 插入数组并在 PhpMyAdmin 中显示值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28701965/

相关文章:

php - Laravel - 加载常见的页眉和页脚以查看

javascript - SilverStripe - JavaScript 变量未通过 AJAX 成功发送到 Page.php

php - Composer 自动加载 Laravel 5.5

mysql - 如何使用 Objective C 将推送通知和其他用户设置的设备 token 发送到服务器上的 sql 表

php - Codeigniter - 使用查询字符串进行路由

arrays - 有什么简单的方法可以快速合并两个数组并删除重复项?

c++ - 从数组更改为包含数组的结构

php - 如何在Limesurvey Docker镜像上安装PHP Composer

mysql - 如何在 phpmyadmin 中设置事件?

javascript - 排序嵌套数组