我有一个要创建用户帐户的网站。该网站目前运行良好,但我想知道如何改进和解决我遇到的问题。如果站点将帖子发送到服务器端 php,它会正确创建用户,但是如果有人在没有发布的情况下加载服务器 php 文件,它将在数据库中创建一个所有值都为空的用户。我正在检查用户,但请帮我优化我的代码。先感谢您。
/// HTML ///
<form id="form_customer">
// form stuff here, please note my button for submit is not in the form but outside
</form>
<button id="form_submit">Submit</button>
<button id="form_cancel">Cancel</button>
//Javascript jQuery
$("#form_cancel").click(function() {
window.location = 'index.php';
});
$("#form_submit").click(function() {
$.post("incl/server_register.php", payload, function(data) {
if(data == "500"){
alert("An Error has occured.");
}
if(data == "200"){
alert("Registration complete. Redirecting...");
indow.location = 'index.php';
}
if(data == "400")
alert("Username already exists. Please select another.");
},"json");
// And here is my server side PHP
$mysqli = new mysqli($dbHost, $dbUser, $dbPass);
$mysqli->select_db($dbDB);
// Check connection
if($mysqli->connect_error) {
die('Connection Error: (' .$mysqli->connect_errno .') ' .$mysqli->connect_error);
}
if(isset($_POST))
{
// Query DB
$check = "SELECT * FROM table WHERE Username='$sUsername'";
$result = $mysqli->query($check);
if($result->num_rows == 0)
{
$query = "INSERT into table (blah blah)
$result = $mysqli->query($query);
if($result == false)
echo json_encode("500");
else {
echo json_encode("200");
mail($to, $subject, $message, $headers);
}
}
else
echo json_encode("400");
}
}