【发布时间】:2014-06-27 16:25:46
【问题描述】:
当我单击提交按钮时,我似乎无法找出为什么我的 PHP 代码不允许我将信息存储在 MySQL 中。有人可以告诉我下面的代码有什么问题吗?
我想让用户提交他们的注册表单并且他们的信息可以转移到 MySQL 数据库中。然后,我希望将用户带到我的 index.html 文件。
感谢任何帮助。 谢谢
<?php
$dbhost = 'localhost';
$dbuser = 'root';
$dbpass = '';
$mysql_database = "21st";
$conn = mysqli_connect($dbhost, $dbuser, $dbpass) or die("Could not connect database");
mysqli_select_db($conn, $mysql_database) or die("Could not select database");
$username = $_POST['username'];
$email = $_POST['email'];
$password = $_POST['password'];
$password2 = $_POST['password2'];
if ($password == $password2) {
$sql = "INSERT INTO members (username, email, password) VALUES ('$userrname','$email','$password')";
} else {
echo "Your passwords must match";
}
?>
【问题讨论】:
-
您实际上并没有执行您的查询。但如果你这样做了,无论如何你都会对 sql 注入持开放态度,所以最好不要这样做。
-
...另外,这个
'$userrname'应该改变。检查您的拼写,不要以纯文本形式存储密码。您对大量 SQL 注入持开放态度。 请勿使用此代码,除非仅用于内部目的或纯粹的学习。 -
那么,您的问题是连接到 MySQL(如您的标题中所暗示的)吗?或者只是没有像上面评论中提到的那样执行查询?
-
在开发过程中,将错误报告添加到文件顶部
error_reporting(E_ALL); ini_set('display_errors', 1); mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT); -
是的,我知道其中有很多是不正确的,这就是我在这里的原因。还在学习。问题是查询永远不会执行。我可以很好地连接到 SQL。