Php Ajax-responseText不';不包含所有的输出

Php Ajax-responseText不';不包含所有的输出,php,javascript,ajax,xmlhttprequest,responsetext,Php,Javascript,Ajax,Xmlhttprequest,Responsetext,我刚开始学习基本的Ajax。目前我还没有使用jQueryAjax。但是我遇到了一个问题,即使经过了很多努力也无法解决 我的php文件是- $sql = "SELECT * FROM posts"; $result = mysqli_query($con,$sql) or die ('Error: ' . mysqli_error($con)); while($feedItem = mysqli_fetch_array($result)) { echo $feedItem['user'].

我刚开始学习基本的Ajax。目前我还没有使用jQueryAjax。但是我遇到了一个问题,即使经过了很多努力也无法解决

我的php文件是-

$sql = "SELECT * FROM posts";
$result = mysqli_query($con,$sql) or die ('Error: ' . mysqli_error($con));
while($feedItem = mysqli_fetch_array($result)) {
    echo $feedItem['user']." ";
} 
echo "dd";

我调用它的文件有JS脚本-

xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function()  {
    if (xmlhttp.readyState==4 && xmlhttp.status==200)   {
        alert(xmlhttp.responseText);
    }
}
xmlhttp.open("GET","loader.php", true);
xmlhttp.send();

现在,如果我单独运行php文件,它会打印---

用户1用户2用户3 dd

但如果我运行另一个文件,则警报仅包含“dd”。它不会用user1 user2提醒我


为什么循环中的任何内容都没有包含在responseText中?

您的代码对我来说运行良好,我已经测试过了。 使用控制台查看来自服务器的原始响应。但是看起来有点奇怪,您是从web浏览器还是cli运行php?
祝贺您没有使用jQueryAjax!查看以标准方式执行的所有操作。

您是否查看了console/net work选项卡或Fiddler/Charles之类的工具中的响应?您是否尝试将$feedItem['user']分配给变量,然后回显循环的完整结果+您的“dd”?多个echo可能存在问题,其中只报告最后一个。我怀疑它连接到DB的方式会有所不同,这取决于您是从CLI还是从Web服务器运行脚本。还可能在循环中使用一些占位符输出,以查看是否执行了循环。