首页  >  文章  >  后端开发  >  如何使用 PHP 将多个复选框和文本框数组插入 MySQL 数据库?

如何使用 PHP 将多个复选框和文本框数组插入 MySQL 数据库?

DDD
DDD原创
2024-10-28 07:37:30273浏览

How to Insert Multiple Checkbox and Textbox Arrays into a MySQL Database with PHP?

PHP 将多个复选框和文本框数组插入 MySQL 数据库

使用 PHP 姿势将多个复选框和文本框值数组插入 MySQL 数据库独特的挑战。让我们解决两个常见问题:

复选框显示不正确
提供的 HTML 表单未显式索引复选框名称。因此,无论其实际状态如何,所有复选框都显示为已选中。

解决方案:使用每个复选框的唯一标识符对复选框名称进行索引。例如:

<code class="html"><input tabindex="1" name="checkbox[0]" type="checkbox" value="17" />
<input tabindex="1" name="checkbox[1]" type="checkbox" value="20" /></code>

数据插入失败
虽然建立了与数据库的连接,但向购买表插入数据失败。

解决方案

  1. 使用索引数组:对项目、数量和复选框数组进行索引以匹配各自的元素。
<code class="php">foreach ($_POST['checkbox'] as $i => $price) {
    $name = $_POST['name'][$i];
    $quantity = $_POST['quantity'][$i];
    //...
}</code>
  1. 使用预准备语句:使用预准备语句防止 SQL 注入并提高性能。
<code class="php">$stmt = $conn->prepare("INSERT INTO purchases (Product, Quantity, Price) VALUES (?, ?, ?)");
$stmt->bind_param("sis", $name, $quantity, $price);
$stmt->execute();</code>
  1. 从数据库检索价格:将价格存储在数据库中而不是 HTML 中,以防止用户操纵它们。

以上是如何使用 PHP 将多个复选框和文本框数组插入 MySQL 数据库?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn