放置在PHP开关块中的链接本身正在被调用
我有一个奇怪的问题。今天我开始收到我的用户的支持请求,他们的消息正在消失,而没有删除它们。我在不同的浏览器、计算机、电话中测试了消息脚本,但没有发现这个问题 然后我在手机上更新了Android系统,之后发现问题确实存在,并发生了以下情况: 用户访问文件messages.php阅读一些对话,例如:放置在PHP开关块中的链接本身正在被调用,php,switch-statement,Php,Switch Statement,我有一个奇怪的问题。今天我开始收到我的用户的支持请求,他们的消息正在消失,而没有删除它们。我在不同的浏览器、计算机、电话中测试了消息脚本,但没有发现这个问题 然后我在手机上更新了Android系统,之后发现问题确实存在,并发生了以下情况: 用户访问文件messages.php阅读一些对话,例如: https://mydomain/messages.php?do=conversation&userid=123 “对话”块包含删除对话的链接: <a href="/messages.p
https://mydomain/messages.php?do=conversation&userid=123
“对话”块包含删除对话的链接:
<a href="/messages.php?do=deleteconvers&userid=<?php echo $userid;?>">Delete this conversation</a>
当用户以某种神秘的方式访问区块“对话”时,同时被自动调用的链接会删除消息。当用户再次访问同一对话时,不会出现任何消息-所有消息都将被删除。这种情况只会发生在手机上,而不会发生在个人电脑上
这是我脚本的结构:
messages.php
switch($do) {
case "conversation":
<a href="/messages.php?do=deleteconvers&userid=<?php echo $userid;?>">Delete this conversation</a>
messages
messages
messages
messages
break;
case "deleteconvers":
//mysql query to delete messages
break;
default:
//conversations list
break;
}
开关($do){
案例“对话”:
信息
信息
信息
信息
打破
案例“deleteconvers”:
//用于删除消息的mysql查询
打破
违约:
//对话列表
打破
}
您已经在使用php,并且php中包含了
。那应该给你一个错误。再加上将纯HTML注入PHP。要么这是伪代码,要么我没有掌握什么。我在数据库中有超过18000000条消息。该脚本自2018年6月以来一直运行良好。从那时起,我就没有受到任何影响,也没有人报告过这样的问题。这就是为什么我只发布了一个“伪”代码。Android是否可能以某种方式调用页面上包含的所有链接?可能是服务器升级,错误被抑制。如果有这么多问题(1.8亿条消息非常重要)如果是我,这可能是你需要向Android开发者提出的问题,我会登录所有这些案例,并在本地android上运行,看看会发生什么。我还将记录$do包含的内容。