ユーザーのログインの詳細を確認しながら、jQuery がどのように機能するかを理解しようとしています。これらのページを作成しました:
- db.php (DB接続)
- signin.html (ログインフォーム)
- check.php (ログインチェック - MySQL 選択)
- myscript.js (jQuery)
サインインフォーム:
<script src="js/jquery.min.js"></script>
<script src="js/myscript.js"></script>
<div id="loginForm">
<label>Please Login</label><br/>
<form id="myForm" action="check.php" method="post">
<input name="emailid" id="email" type="text" placeholder="Enter your Email ID"/><br/>
<input name="password" id="pass" type="password" placeholder="Enter your password"/><br/>
<button id="submit"> Login</button>
</form>
</div>
<div id="ack"></div>
myscript.js
$(document).ready(function (){
$("#submit").click(function (){
alert("hi");
if($("#email").val()==""||$("#pass").val()=="")
$("div#ack").html("please enter email and pass");
else
$.post( $("#myForm").attr("action"),
$("#myForm :input").serializeArray(),
function(data){
$("div#ack").html(data);
});
$("#myForm").submit( function(){
return false;
});
});
});
check.php
$email = $_POST['emailid'];
$pass = $_POST['password'];
include "db.php";
$sql = "select count(*)from students where email = '$email' and password = '$pass';";
$result = mysqli_query($con,$sql);
$row=mysqli_fetch_array($result);
if($row[0]>0)
echo "found result";
else
echo "no result";
すべてが正常に機能しています。唯一の問題は、データが投稿されていないことです。値を入力しているにもかかわらず、$_POST[] が null 値を受け取っています。
助けてください。