我在使用 ajax/jquery 编程时遇到问题。 我尝试了很多不同的方法,但没有任何效果。
Ajax 将 selItem 发送到 ajaxsql.php,这有效!
ajaxsql.php 中的 sql 查询有效,因为如果我直接在浏览器中调用脚本,它会输出以下内容: [{"forumname":"SDE forum","user":"michael","txt":"Jeg hedder Michael!"}]
问题是ajax函数显示一个带有Error[object Object]的警告框
forum.php脚本:
<script type="text/javascript">
function ForumChat(selItem) {
$.ajax({
type: "POST",
url: 'ajaxsql.php',
data: { selectedItem : selItem.value },
dataType: "json",
success: function(data) {
alert(data);
$('#txtarea').html(data);
},
error: function(data) {
alert('Error' + data);
}
});
}
</script>
ajaxsql.php 脚本:
<?php
if(!isset($_SESSION))
{
session_start();
}
include('class.php');
//$sel = $_POST['selectedItem'];
$sel = "SDE forum";
$sql = " SELECT * FROM forum WHERE user = '".$_SESSION['currentuser']."' AND forumname = '".$sel."' ";
$result = mysqli_query($_SESSION['con'], $sql);
while($row = mysqli_fetch_array($result))
{
$forumname = $row['forumname'];
$user = $row['user'];
$txt = $row['text'];
$return[] = array("forumname" =>$forumname, "user" =>$user, "txt" =>$txt);
}
echo json_encode($return);
?>
最佳答案
因为ajaxsql.php返回对象..
你可以在ajax中做的是
success: function(response) {
$('#txtarea').html('');
$.each(response.data, function(){
console.log(this);
$('#txtarea').append(data);
});
},
关于javascript - php 脚本中 json 返回值的 ajax jquery 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43930884/