如何获取调用脚本的页面名称

时间:2012-04-13 12:53:39

标签: php javascript jquery ajax

我有一个从3个不同页面调用的函数。在每个页面中,我将attr添加到一个div。

例如:

<div id="posts" page="home"></div>
<div id="posts" page="feed"></div>
<div id="posts" page="search"></div>

在Java脚本中,我获取页面的值,然后将其传递给我有ifelseifelse州议员的PHP文件。

为了更加安全,我认为如果在PHP文件中AJAX加载以获取调用脚本的url会更好,因为使用google调试工具可以改变attr。

<?php
   if($page =='home' && $sourceUrl == 'the home url' )
   {
       // do this
   }
   elseif($page =='feed' && $sourceUrl == 'the feed url')
   {
       // do this
   }
   elseif($page =='search' && $sourceUrl == 'the search url')
   {
       // do this
   }
   else 
   {
       exit();
   }
?>

1 个答案:

答案 0 :(得分:0)

嗯,嗯,你可以使用javascript来获取当前页面地址并发送到你的PHP文件,你也可以使用PHP,但这只会让你获得PHP脚本的地址。

无论如何你使用javascript完全不会安全,正确的方法是不要担心发送到服务器的内容,因为serverside脚本验证来自用户的所有输入,而不是其他方式围绕!

只需检查PHP脚本中的某些值,如果收到其他内容,则终止Ajax调用,这是简单而安全的(至少在某种程度上)解决方案。

为了避免使用XSS,您可以生成随机字符串,该字符串在PHP的每个页面加载时插入HTML中,当然必须是随机的。每次调用ajax都会发送该字符串,以避免有人从其他地方向您的脚本发送ajax调用。