我正在尝试使用每秒自动刷新的AJAX在文本区域中显示PHP回声。到目前为止,我所做的一切都不起作用,并且我在文本区域中什么也得不到。
下面是我的代码:
<?php
$stmt = mysqli_prepare($db_conx,"SELECT message FROM chat WHERE asker = ?");
$stmt->bind_param('s', $asker);
$stmt->execute();
$stmt->bind_result($message);
/* fetch values */
while ($stmt->fetch()) {
$currvalue[] = array('message'=>$message);
}
echo $message;
echo '333333333';
?>
HTML代码:
<textarea id="chattercontent" style="width:90%; height:150px; resize:none;" readonly></textarea>
AJAX/jQuery代码:
<script type="text/javascript">
$(document).ready(function () {
function load() {
$.ajax({ //create an ajax request to load_page.php
type: "GET",
url: "file.php",
dataType: "text", //expect html to be returned
success: function (response) {
$("#chattercontent").html(response);
setTimeout(load, 1000)
}
});
}
load();
});
</script>
上面的代码发生了什么,我在我的文本区域中得到了像333333333
这样的echo '333333333';
,这很好,很好。但是我没有在我的文本区域中得到echo $message;
。
我已经检查了MySQL表和列,看看它是否不是空的,我可以确认它不是空的,并且其中包含一些值。
我还直接从浏览器查看了file.php
页面,它可以正确地执行echo $user_message;
。但它不会在AJAX调用和我的文本区域中得到响应。
有人能在这个问题上给点建议吗?
发布于 2014-09-07 23:48:57
您的$message变量未被赋值
请将% echo % $message;替换为
print_r($currvalue);
你会看到你的输出。
换句话说,您的$message变量不包含任何内容!(用$message = 'someting';
给它分配一些东西)
https://stackoverflow.com/questions/25712011
复制相似问题