gpt4 book ai didi

php - 健全性检查 - 为什么这个 PHP MySql 插入不起作用?

转载 作者:行者123 更新时间:2023-11-29 08:09:59 30 4
gpt4 key购买 nike

您能否扫描下面的代码并找出为什么表单无法成功地将记录插入到我的 MySql 表“users”中?

插入.php:

<?php // insert.php
require_once 'login.php';
$con = mysqli_connect($db_hostname, $db_username, $db_password, $db_database);
// Check connection
if (mysqli_connect_errno())
{
echo "Failed to connect to MySql: " . mysqli_connect_error();
}

$sql = "INSERT INTO users (name, email)
VALUES
('$_POST[name]]','$_POST[email]')";

if (!mysqli_query($con,$sql))
{
die('Error: ' . mysqli_error($con));
}
echo "1 record added";

mysqli_close($con;)
?>

index.html:

<html>
<body>
<h1>Hello!</h1>

<form action="insert.php" method="post">
Name: <input type="text" name="name">
Email <input type="text" name="email">
<input type="submit">
</form>

</body>
</html>

登录凭据存储在单独的login.php 文件中。谢谢!

最佳答案

这里有一个额外的方括号

 ('$_POST[name]]',
^------- //Remove this from your SQL Query

您需要切换到PreparedStatements严重的是,你上面的代码很容易受到SQL注入(inject)。

关于php - 健全性检查 - 为什么这个 PHP MySql 插入不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21814586/

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