[英]PHP Insert Into database Mysql from POST form [duplicate]
我创建了一个基本表单来捕获 email 和用户密码。 我知道 SQL 注射等等。 这是为了测试教育目的,但我无法获得发布数据的表格。 数据库已连接,但似乎有一个查询我无法弄清楚它为什么不工作。 我尝试了各种替代方案,但没有运气。 请参阅下面的代码,如果您能指出正确的方向,我将不胜感激
<?php
if (array_key_exists('email', $_POST) OR array_key_exists('password', $_POST)) {
$link = mysqli_connect("xxx.xxx.xxx.xx",
"xxxxxxxxxx",
"NiceTry",
"NotToday");
if (mysqli_connect_error()) {
die ("you have NOT Connected!!! <br>");
}
if ($_POST['email'] == '') {
echo "<p>Email address is required.</p>";
} else if ($_POST['password'] == '') {
echo "<p>Password is required.</p>";
} else {
$query = "SELECT `id` FROM `users`
WHERE email = '".mysqli_real_escape_string($link, $_POST['email'])."'";
$result = mysqli_query($link, $query);
if (mysqli_num_rows($result) > 0) {
echo "<p>That email address has already been taken.</p>";
} else {
$query = "INSERT INTO `Users`
(`email`, `password`)
VALUES ('".mysqli_real_escape_string($link, $_POST['email'])."',
'".mysqli_real_escape_string($link, $_POST['password'])."')";
if (mysqli_query($link, $query)) {
echo "<p>You have been signed up!";
} else {
echo "<p>There was a problem signing you up - please try again later.</p>";
}
}
}
}
?>
<form method = "post">
<input name="email" type="text" placeholder="Email address">
<input name="password" type="password" placeholder="Password">
<input type="submit" value = "Sign up">
</form>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.