1
私がしたいのは、 'win!'です。何らかの理由でDBにその情報が見つからなかった場合、データベースの詳細(正確に動作する)と「損失」でログインした場合PHP/JS:取得できません
私の問題は、何らかの理由で私のコード行が 'echo $ email;'です。動作しません。それはNULLに設定されているようです。
現時点では、入力内容に関係なく「損失」しか表示されませんが、データベースに空の電子メールとパスワード(電子メール= ""、パスワード= "")を含む行を追加すると、PHPスクリプトは 'win!'を返します。
PHPコード:
<?php
// echo "php test";
//server info
$servername = "localhost";
$username = "root";
$dbpassword = "root";
$dbname = "personal_data";
//Establish server connection
$conn = new mysqli($servername, $username, $dbpassword, $dbname);
//Check connection for failure
if (mysqli_connect_errno()) {
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}
//Read in email & password
echo "reading in email & password...";
$email = mysqli_real_escape_string($conn, $_POST['email1']);
$password = mysqli_real_escape_string($conn, $_POST['password1']);
echo $email; //this prints blank
echo $password; //this also prints blank
$sql = "SELECT Name FROM personal_data WHERE Email='$email' AND Password='$password' LIMIT 1";
$result = mysqli_query($conn, $sql);
if(mysqli_num_rows($result) > 0){
echo "win!!";
} else {
echo "loss";
}
mysqli_close($conn);
?>
JSコード:
$(document).ready(function(){
// alert("js working");
$('#login_button').click(function(){
var email = $('#email').val(); //prints the correct value
var password = $('#password').val(); //prints the correct value
var dataString = 'email1=' + email
+ '&password1=' + password;
$.ajax({
type: "POST",
url: "http://localhost:8888/php/login.php",
data: dataString, //posts to PHP script
success: success()
});
});//eo login_button
function success(){
alert("success");
}
});//eof
'var dataString = {email1:email、password1:password};'を試し、 'data'オプションに直接渡してください – adeneo