我正在编写一个基本的文本聊天网络应用程序,我正在尝试找出实现“踢”能力的最佳和最安全的方法,最好通过某种方式将PHP脚本发送到特定的IP地址,但任何其他方法'non-js'也会很酷。
目前我已经通过向数组中添加已定义的IP来编写“禁止”功能,如果用户刷新,则会通过使用禁止列表对数组进行交叉检查来重定向它们,如果在阵列。
有没有办法在后台运行此检查?
答案 0 :(得分:1)
BIG EDIT:
好的,所以这是一种简单的方法(使用无聊的文本文件):
创建另一个名为bad_people.txt
创建一个脚本,将顽皮的用户IP地址插入文本文件中。像这样:
$myFile = "../bad_people.txt";
$fh = fopen($myFile, 'a') or die("can't open file");
$ip_splitter="-::-"; //This is a splitter...Will be used to split each IP address in the text file to make it readable in future.
$bad_address = "22.22.22.22".$ip_splitter;
fwrite($fh, $bad_address);
fClose($fh);
所以,当你想让某人离开聊天时你运行上面的代码......
注意:请参阅我如何使用拆分器($ip_splitter
)拆分文本文件中的每个IP地址。这样可以更容易地读取文件并将所有地址插入到数组中。
然后,在AJAX调用中(我假设在无限循环中运行):
$myFile = "../bad_people.txt";
$fh = fopen($myFile, 'r') or die("can't open file");
$ip_splitter="-::-";
$bad_people_array=explode($ip_splitter,$fh);
$user_ip=$_SERVER['REMOTE_ADDR'];
foreach ($bad_people_array as $BAD_IP){
if($BAD_IP==$user_ip){
//do whatever here......
}//end of if the user is bad
}//end of for loop
所以你在你的ajax调用上运行该脚本,以及你的脚本来检查新消息......
你有它。