gpt4 book ai didi

php - 使用php将表单中的数据插入mysql数据库

转载 作者:行者123 更新时间:2023-11-29 19:46:00 25 4
gpt4 key购买 nike

您好,我已经编写了一段代码,用于将数据从表单插入到 mysql 数据库:

$conn = new PDO("mysql:dbname=data12;host=$servername", $username, $password);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$ul = $_POST['fname'];
$sql="insert into t22 values('16',".$ul.")";

记录已添加,但值为空。我还尝试过其他语法,例如:

$sql="insert into t22 values('16',$ul)";
$sql="insert into t22 values('16','".$ul."')";
$sql="insert into t22 values('16',$ul)";

请帮我解决这个问题。

最佳答案

首先要确保没有插入空值,您需要检查该值是否从表单中设置,然后在设置值时执行查询,还需要在使用 PDO 时准备语句,也不要直接在查询中输入变量,而是使用占位符。

你的代码应该是这样的:

<?php
$conn = new PDO("mysql:dbname=data12;host=$servername", $username, $password);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);


$errors = "";

$number = 16;

if (isset($_POST['buttonName'])) {

//check if the field is not empty


if (empty($_POST['fname'])) {

echo "enter name";
$errors++;
} else {


$ul = $_POST['fname'];
}

if ($errors <= 0) {//no errors lets insert

$sql = $conn->prepare("INSERT INTO t22 (id,name) values(?,?)");
$sql->execute(array(
$number,
$ul
));

echo "record entered";
}

}

?>

希望这能为您指明正确的方向。

NB: its important that you filter and sanitize $_POST values before storing them.

关于php - 使用php将表单中的数据插入mysql数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40969232/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com