【发布时间】:2023-03-15 00:58:01
【问题描述】:
我正在尝试创建一个自动填充表单。我有一个下拉菜单和一些表单字段,例如文本框。 当用户单击下拉菜单选项 Ajax 调用启动时,它将检查 Mysql 数据库中的数据。如果找到记录,则会在相关文本框中显示数据。
我的代码工作正常,但我无法从 mysql 数据库返回数据。
<script type="text/javascript">
$(function() {
$("#autofill").change(function() {
var data1= $('option:selected', this).text();
$.ajax({
type: "GET",
url:"autofill.php",
cache: false,
dataType: 'json',
data: 'action1=' + data1,
beforeSend: function() {
$("#validation-errors").hide().empty();
},
success: function(data) {
if(data.success == false)
{
var arr = data.errors;
$.each(arr, function(index, value)
{
if (value.length != 0)
{
$("#validation-errors").append('<div class="alert alert-danger"><strong>'+ value +'</strong><div>');
}
});
$("#validation-errors").show();
$('html, body').animate({scrollTop: $("#validation-errors").offset().top}, 2000);
btn.button('reset');
} else {
data = JSON.parse( data );
$('#title').val('data.title');
$('#total').val('data.total');
$('html, body').animate({scrollTop: $("#features-left-image").offset().top}, 2000);
}
},
error: function(xhr, textStatus, thrownError) {
alert('Something went to wrong.Please Try again later...');
btn.button('reset');
alert(thrownError);
}
});
return false;
});
});
</script>
autofill.php
<?php
require_once('include/db.php');
if(isset($_GET['action1'])){
$search = strip_tags(trim($_GET['action1']));
$search = strtolower($search);
$search="%".$search."%";
$result = $mysqli->prepare("SELECT * FROM posting WHERE title LIKE ?");
$result ->bind_param("s", $search);
$result->execute();
$result->store_result();
//$result->bind_result($title);
//$data[]=$result;
echo json_encode($data);
}
?>
据我了解,问题就在附近。
//$result->bind_result($title);
//$data[]=$result;
echo json_encode($data);
请建议我解决此问题。
谢谢
【问题讨论】: