gpt4 book ai didi

php - 插入数据库

转载 作者:行者123 更新时间:2023-11-29 01:45:21 24 4
gpt4 key购买 nike

大家好,我知道这可能只是一个简单的 sql 语句,但我无法找出问题所在。它将用户添加到数据库中,但不会添加用户的名字。如果我切换 sql 语句,例如在名字之前有用户名和电子邮件,那么它不会插入密码切换名称和电子邮件。有谁知道如何解决这个问题并将所有信息插入到数据库中的正确表中。

<!--
To change this template, choose Tools | Templates
and open the template in the editor.
-->
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title></title>
</head>
<body>
<?php

$db_server = "server";
$db_username = "name";
$db_password = "pass";

$con = mysql_connect($db_server, $db_username, $db_password);if (!$con)
{
die('Could not connect: ' . mysql_error());
}

$database = "Account_Holder";

$er = mysql_select_db($db_username);
if (!$er)
{
print ("Error - Could not select the database");
exit;
}

// table name
$tbl_name=Account_Holder;

// Random confirmation code
//$confirm_code=md5(uniqid(rand()));

// values sent from form
$firstName=$_POST['firstName'];
$email=$_POST['email'];
$password=$_POST['password'];
$username=$_POST['username'];



// Insert data into database
$sql="INSERT INTO $tbl_name(firstname, username, email, password)VALUES('$firstname', '$username', '$email', '$password')";
$result=mysql_query($sql);

echo "You have been added to the database! You may now log on using your username."
?>
<a href ="login.html"> Login Page </a>

</body>
</html>

最佳答案

我猜你是指 $_POST['firstname'] 而不是 $_POST['firstName']

顺便说一句,在将用户输入按照此处的方式放入数据库之前,您确实需要对其进行清理。这段代码对于编写 SQL 注入(inject)攻击来说是微不足道的。首先,通过 mysql_real_escape_string() 运行用户提供的值。就目前而言,如果用户输入包含撇号/单引号,您的代码将无法正常工作。

如果您认为问题是查询产生错误,请在 mysql_query() 之后立即使用 mysql_error() 查看是否有错误。如果没有错误,它将返回一个空字符串。否则,它将返回错误。

此外,我强烈建议尽可能在 MySQL 中使用散列函数(使用 PASSWORD())存储密码。

关于php - 插入数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8283101/

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