AJAXを使用してデータベース内のデータを検索またはフィルタリングしようとしましたが、oninput
イベントを使用して機能をトリガーしました。しかし、それは動作していない、誰かが私のコードで何が間違っているのを見つけるのを助けることができますか?私はちょうどajaxの初心者です。入力フィールドに取得したデータを入れる方法 -
は、PHPの配列をエコーすることはできません。ここに私の入力フィールド、
<div class="form-group">
<label for="stud_num">Student Number</label>
<input type="text" name="stud_num" class="form-control stud_num" oninput="loadinfo()" id="stud_num" placeholder="Student Number" style="max-width:150px;" required>
</div>
は、ここでは、私の関数のだここ
function loadinfo(){
var stud = $("#stud_num").val();
$.ajax({
url:'getrecords.php',
method:'POST',
data:{
"loadinfo": 1,
"stud": stud,
},
success: function(data){
$('#firstname').val(data.firstname);
}
});
}
PHPコード、
if(isset($_POST['loadinfo'])){
$stud = $_POST['stud'];
$sql = "SELECT * FROM studmast WHERE stud_no ='$stud'";
$result = mysqli_query($con,$sql);
while($row = mysqli_fetch_array($result)){
$data[] = array(
'lastname' => $row['lastname'],
'firstname' => $row['firstname'],
'midname' => $row['middlename']
);
}
echo $data;
}
配列を直接エコーすることはできません - > 'echo $ data;'。 ['json_encode()'](http://php.net/manual/en/function.json-encode.php) - > 'echo json_encode($ data);'を使用してください。 – Sean
私はajaxを** dataType: 'json'、**に入れる必要がありますか? – nethken
jQueryと 'Intelligent Guess' - > [*何も指定されていなければ、jQueryは応答のMIMEタイプに基づいて推論しようとします。](http://api.jquery。 com/jquery.ajax /)。 – Sean