【发布时间】:2016-12-05 09:44:25
【问题描述】:
我意识到这可能是一个非常晦涩难懂的问题,但它让我发疯了,在我网站上的页面之间导航时,我在 URL 中插入了 5 个额外的字符。 (例如http://track.chhs.nsw.edu.au/UXTWP/userAccount.php?)正在添加 UXTWP,我不确定从哪里开始,但它会随机破坏导航。
该网站托管在 goDaddy 上。 它包含 HTML CSS PHP JavaScript 和 mySQL。 一切都运行良好,直到我在 PHP 中添加了一个“修复”以阻止潜在的“黑客”,该黑客将使用在 URL 中传递的 id 来切换查看的内容。 我不确定这是不是问题,但这是错误开始发生之前的最新更改。
这是site 我也希望将代码放在phpfiddle上,但我不确定要添加什么?
if(isset($_GET['a'])){
if(strpos($userRow['sID'], $_GET['a']) !== false) {
$_SESSION['student']=$_GET['a'];
$tempArray = db_select("SELECT * FROM student WHERE sID ='".$_SESSION['student']."'");
$studentRow = array_shift($tempArray);
$_SESSION['impactTool'] =$studentRow['impactAssToolID'];
$SName = $studentRow['sName'];
$SDOB = $studentRow['dob'];
$SFormDate = $studentRow['formDate'];
$prevInf = $studentRow['prevInfo'];
$famInf = $studentRow['famInfo'];
$contInf = $studentRow['contextInfo'];
$impactIDMsg = "?z=".$_SESSION['impactTool'];
$btnFlag = true;
}else{
header("Location:logout.php");
}
如果用户试图访问不属于他们的学生的详细信息,其目的是通过注销将用户转回到登录屏幕。
提前感谢您提供的任何帮助。
【问题讨论】:
-
所提供的代码中的任何内容都不会更改 url
-
我没有任何直接访问 URL 的代码,除了带有 HTML a 标签的标准导航和一个 php 构建标签
<ul><?php foreach($studentRow as $val){foreach($val as $row){echo "<li style='clear:both;'><input type='checkbox' value ='".$row['sID']."' name='removeStudent[]' class='deleteButton'><a href='studentProfile.php?a=".$row['sID']."'> ".$row['sName']."</a></li>";@ 987654328@}?></ul> -
它是您的代码添加字符,所以我不知道我们如何帮助解决它
-
我很高兴接受是我的代码创建了额外的字符,但它只创建了 5 个字符,将它们放置在域和试图导航到的页面之间。每个页面都有不同的 php 函数连接到它们,跨页面似乎有一个常见的错误代码不常见?
-
很高兴发布所有或任何要查看但不知道从哪里开始的代码