我以前曾问过这个问题,但我无法理解答案可能是因为它对我不起作用。
我开发了一个聊天应用程序。一旦用户使用keyup提交,它就可以正常工作,即插入到数据库中,也可以选择正常,甚至可以显示消息。正在刷新javascript的页面是load.php,其中包含执行此类选择的php代码;
SELECT * FROM chat WHERE sender_id=$_SESSION['id']
这很好用。但是当我把它改成
时 SELECT * FROM chat WHERE sender_id=$_SESSION['id'] AND receipent_id=$_GET['id']
它不起作用只是因为主页中所选成员的$_GET['id']
没有被传递给load.php,而每隔.....毫秒刷新javascript所以在线消息会话ID和所选成员应显示在消息显示中。
我在主页上使用此代码刷新load.php
;
function refresh(){
setTimeout (function(){
$('#message').load('load.php');
refresh();
}, 2000);
}
工作得很好。
现在这个load.php必须为我选择仅在主页中选择的成员的消息。那我怎么能有这个成员'从数据库中选择时,id是否传递给此load.php?
非常感谢您的帮助程序员。
答案 0 :(得分:1)
您需要在代码中添加get变量:
class Foo private constructor(private val xs: ArrayList<Int>) : List<Int> by xs {
constructor() : this(ArrayList<Int>()) { }
}
答案 1 :(得分:1)
嗯,您需要在查询字符串上传递GET
值。目前您正在申请此内容:
load('load.php')
如果您想要id
值,请添加一个:
load('load.php?id=' + someValue)
如果您需要从当前查询字符串中获取,则有a number of ways to do that。但是,当您最初加载页面时,如果该值可用,那么首先将它从PHP代码输出到页面将是微不足道的。像这样:
var someValue = <?php echo $someValue; ?>;
请记住以下几点:
load.()
来电中更改此值。因此,您的方法可能会让用户轻而易举地冒充&#34;您应用程序中的其他用户。确保始终验证授权服务器端。答案 2 :(得分:1)
如果你想传递$ _GET ['id']值,请尝试在你的函数中添加这个值
function refresh(){ setTimeout (function(){
$('#message').load('load.php?id=<?php echo $_GET['id']; ?>');
refresh(); }, 2000);
}
然后load.php将获得值