为了解决这个问题,我会使用 Ajax:
php check_email.php
$email= $_POST["email"];
$firstname = $_GET["firstname"];
$lastname = $_GET["lastname"];
...
$query1 = "SELECT * FROM `db` WHERE `Email` = '$email'";
$result = mysql_query($query1);
if (mysql_num_rows ($result)){
echo "yes";
} else {
mysql_query("INSERT INTO db (Email, FirstName, LastName) VALUES ('$email','$firstname','$lastname')");
echo "no";
}
HTML:
<form method="post" action=""/>
<input name="email" type="text" id="email" value=""/>
<input name="firstname" type="text" id="firstname" value=""/>
<input name="lastname" type="text" id="lastname" value=""/>
<input name="Submit" type="button" id="submit" value="Go"/>
<div id="msg"></div>
</form>
<!--load latest version of jquery-->
<script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>
<script>
//JS (use jquery):
$("#submit").click(function () {
$.ajax({
type: "POST",
url: "check_email.php",
dataType: "text",
//send data to php
data: {email:$("#email").val(),firstname:$("#firstname").val(),lastname:$("#lastname").val()},
//get answers
success: function (response) {
if(responce=="yes") $("#msg").html("email exists!")
else if (responce=="no") $("#msg").html("Email was successfully added to the database!")
},
error: function (xhr, ajaxOptions, thrownError) {
alert(xhr.status);
alert(thrownError);
}
});
});
</script>