我在与我创建(仅用于测试目的,我知道这是容易受到SQL注入)一个形式的问题PHP的形式不插入值到数据库
基本上,形式不插入到数据库,但它似乎在剧本上回归真实。
的代码如下:
form.php的
<form action="create.php" method="post">
<p>Username: <input type="text" name="username" />
</p>
<p>Password: <input type="password" name="password" />
</p>
<p><input type="submit" value="Create" name= "cre" />
</p>
</form>
create.php
<?php
session_start();
$dbname = "obsidian";
if(isset($_POST['cre'])){
$username = $_POST['username'];
$password = $_POST['password'];
$mysqli = new mysqli('localhost','admin1', 'password1','obsidian') or die('Failed to connect to DB' . $mysqli->error);
$hashed_password = password_hash($password,PASSWORD_DEFAULT);
$registerquery = "INSERT INTO users (username, hash) VALUES('$username', '$hashed_password')";
if($registerquery = true)
{
echo "<h1>Success</h1>";
echo "<p>Your account was successfully created. Please <a href=\"index.php\">click here to login</a>.</p>";
}
else
{
echo "<h1>Error</h1>";
echo "<p>Sorry, your registration failed. Please go back and try again.</p>";
}
}
?>
我得到了成功的消息,但正如我所说,价值没有得到插入到数据库中。
任何帮助都会很好。
永远不会在数据库上运行插入查询。 – Pitchinnate 2014-12-03 19:04:45
...你很容易受到[sql注入攻击](http://bobby-tables.com) – 2014-12-03 19:06:20
你有没有区别=和==? – bksi 2014-12-03 19:07:48