gpt4 book ai didi

Php MySQL简单形式是插入空

转载 作者:行者123 更新时间:2023-11-29 20:47:38 25 4
gpt4 key购买 nike

我的 phpMyAdmin 遇到这个问题。我已经设置了简单的 php 和 mysql 脚本,一切正常。它连接到我的 mysql 数据库(通过我的托管提供商远程),并且它实际上将所有必需的字段插入到数据库中。问题是这些字段都是空白的。它们里面什么也没有。这是我的代码:

<?php
$con = mysql_connect("myserverip","mydatabasename","my password");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}

mysql_select_db("mydatabasename", $con);

$sql="INSERT INTO nametable (firstname, lastname) VALUES('$_POST[firstname]','$_POST[lastname]')";

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

mysql_close($con)
?>

html 非常简单,只有两个输入字段:名字和姓氏:

HTML:

<html>
<body>
<h1>A small example page to insert some data in to the MySQL database using PHP</h1>
<form action="insert.php" method="post">
Firstname: <input type="text" name="fname" /><br><br>
Lastname: <input type="text" name="lname" /><br><br>

<input type="submit" />
</form>
</body>
</html>

感谢所有帮助。

最佳答案

因为您已将 $_POST 变量括在单引号 (') 中,PHP 将它们视为字符串而不是数组,因此不会提取数据从他们。您的查询应如下所示:

$sql = "
INSERT INTO
nametable (firstname, lastname)
VALUES
('" . $_POST['firstname'] . "', '" . $_POST['lastname'] . "')";

(为了可读性添加了空格)

此外,正如其他一些用户所指出的,PHP 的 mysql 扩展 has been deprecated所以不应该使用它。此外,您构建查询的方式为您打开了名为 SQL injection 的东西。 ,这是非常危险的。

如果此代码只是为了好玩,那么没关系,但在任何情况下都不应该将其上传到生产服务器。

关于Php MySQL简单形式是插入空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38337879/

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