动态PHP响应

动态PHP响应,php,jquery,ajax,Php,Jquery,Ajax,我有一个html页面,上面有一个按钮,可以触发对php页面的ajax请求。到目前为止还不错 我有一个数据库消息,其中有“id”、“receiver”、“sender”、“message”列 假设我有两个入口,都是同一个接收者和发送者。信息是不同的 现在,点击按钮后,信息将以单独的段落显示,分别为信息1和信息2 我的问题是,我不知道会有多少条消息,单击按钮应该会显示所有消息。我已经尝试了一个while循环,但不能让它正常工作。另外,JQuery将如何处理这样的事情 到目前为止,我的php: $th

我有一个html页面,上面有一个按钮,可以触发对php页面的ajax请求。到目前为止还不错

我有一个数据库消息,其中有“id”、“receiver”、“sender”、“message”列

假设我有两个入口,都是同一个接收者和发送者。信息是不同的

现在,点击按钮后,信息将以单独的段落显示,分别为信息1和信息2

我的问题是,我不知道会有多少条消息,单击按钮应该会显示所有消息。我已经尝试了一个while循环,但不能让它正常工作。另外,JQuery将如何处理这样的事情

到目前为止,我的php:

$thuser = $_SESSION['username']; //this user
$sql = "SELECT * FROM messages WHERE receiver = '$thuser'";

if ($result = mysqli_query($link, $sql)) {

  while ($row = $result->fetch_row()) {
  ...
  });

}
如果可能,我想要一个数组作为包含所有消息的响应 {'message1'=>'你好','message2'=>'有什么事吗?',messagen=>'废话'}


谢谢你的帮助

在您的案例中使用数组:

$message=array();

$thuser = $_SESSION['username']; //this user
$sql = "SELECT * FROM messages WHERE receiver = '$thuser'";

if ($result = mysqli_query($link, $sql)) {
 $i=1;
  while ($row = $result->fetch_row()) {
   $st='Message'.$i;
  $message[$st]=$row['message'];
   $i++;
  });

}
print_r($message);

这是相当广泛的。您使用
Jquery
?@D.Krold尝试了什么?您应该创建一个php文件来处理来自Jquery的ajax请求。PHP将返回JSON数组中所有消息的列表。在ajax成功的前端,您将收到这个消息。使用该数组运行循环,并使用jquery打印页面中的p。如果仍然需要更多帮助,请随时发表评论。
不是有效的PHP。如果在PHP文件中输出HTML,只需在js中发出get请求,并通过将响应添加到dom(页面)中,将其直接显示在页面上的任何位置。注意,大多数人都同意从服务器(PHP)输出JSON并在JS中处理是实现这一点的方法。您应该使用web浏览器开发工具来检查get请求,以查看它收到的输出。如果输出是错误的,那么这是一个PHP问题,如果您难以使用JS在页面上显示输出,那么这是一个JS问题。你需要先弄清楚它是哪一个,我现在通常知道如何得到json响应,如果我有一组变量,那么这很容易。我的问题是,我不知道如何创建一个数组,之前不知道它将有多少个条目。非常感谢!