Я пытаюсь проверить ввод пользователя в форме html в список допустимых значений в базе данных, используя Ajax, а затем я хочу отобразить соответствующее сообщение. Это код, который я использую:
js
$(document).ready(function(e){
$.ajax({
type: 'POST',
url: 'datafile.php',
dataType : "json",
success: function(result) {
$("#postal_code").change(function(){
var postal_code = $("#postal_code").val().slice(0,-2);
if ($.inArray(postal_code,result) !== -1){
console.log('success');
} else {
console.log('failure');
}
});
}
});
});
файл данных. php
<?php
require_once("./db_con.php");
$query = mysqli_query($con, "SELECT postal_code FROM table");
$rows = mysqli_fetch_all($query);
echo json_encode($rows);
mysqli_free_result($query);
mysqli_close($con);
exit();
?>
Проблема, с которой я столкнулся, - это ввод value никогда не соответствует ни одному из значений переменной result
, даже если я знаю, что они есть в базе данных. Я думаю, проблема связана с тем, что переменная result
содержит массивы в стороне от другого массива, например [["value1"],["value2"],["value3"]]
.