$_SERVER[PHP_SELF], $_SERVER[SCRIPT_NAME], $_SERVER['REQUEST_URI'] 在用法上是非常相似的,他们返回的都是与当前正在使用的页面地址有关的信息,这里列出一些相关的例子,帮助确定哪些是在你的脚本最适合的。
$_SERVER['PHP_SELF']
http://www.yoursite.com/example/ — – — /example/index.php http://www.yoursite.com/example/index.php — – — /example/index.php http://www.yoursite.com/example/index.php?a=test — – — /example/index.php http://www.yoursite.com/example/index.php/dir/test — – — /dir/test
当我们使用$_SERVER['PHP_SELF']的时候,无论访问的URL地址是否有index.php,它都会自动的返回 index.php.但是如果在文件名后面再加斜线的话,就会把后面所有的内容都返回在$_SERVER['PHP_SELF']。
$_SERVER['REQUEST_URI']
http://www.yoursite.com/example/ — – — / http://www.yoursite.com/example/index.php — – — /example/index.php http://www.yoursite.com/example/index.php?a=test — – — /example/index.php?a=test http://www.yoursite.com/example/index.php/dir/test — – — /example/index.php/dir/test
$_SERVER['REQUEST_URI']返回的是我们在URL里写的精确的地址,如果URL只写到”/”,就返回 “/”
$_SERVER['SCRIPT_NAME']
http://www.yoursite.com/example/ — – — /example/index.php http://www.yoursite.com/example/index.php — – — /example/index.php http://www.yoursite.com/example/index.php — – — /example/index.php http://www.yoursite.com/example/index.php/dir/test — – — /example/index.php
在所有的返回中都是当前的文件名/example/index.php
问题内容: 我正在CodeIgniter中构建一个PHP应用程序。CodeIgniter将所有请求发送到主控制器:。但是,我不喜欢在URI中看到。例如,将路由到。我需要一种可靠的方法来让脚本知道其地址,因此它将知道如何处理导航。根据CodeIgniter文档,我已经使用过。 规则如下: 通常,我只是检查一下,但在这种情况下,它始终为。我可以从,等获得它,但是我正在尝试确定哪一个最可靠。没有人知道(
问题内容: 我发现有一篇文章声称容易受到XSS攻击。 我不确定我是否理解正确,但是几乎可以肯定这是错误的。 这怎么容易受到XSS攻击! 问题答案: 为了使其安全使用,您需要使用。
问题内容: 如果我要求的只是。 有没有一种方法可以在php中(以后没有ajax)知道用户请求的页面? 谢谢 问题答案: 简短答案:不可以。 哈希不会传递到服务器,它仅存在于客户端。这是设计使然。如果您的问题的解决方案涉及需要了解哈希服务器端,则您选择了错误的处理方式。
我的nginx和php配置有问题。由于某些原因,为空。 我正在跑步: Ubuntu 18.04 nginx(nginx版本:nginx/1.14.0(Ubuntu)) php(PHP7.2.10-0ubuntu0.18.04.1) 我不知道是什么导致了这个问题。我在网上读了很多书,但找不到任何解决办法。 只是为了看看是否有更多的信息丢失,我检查了我从,这是我得到的(审查过的私人信息...): 数组
问题内容: 在PHP页面上的表单中,可以使用: 要么 要么 在表单的动作属性中。由于echo 不会传递要使用的变量,而您必须使用,为什么还要使用它呢? 我问是因为我花了一些时间才弄清楚这些变量没有随传递。谢谢。 问题答案: 该属性将默认为当前URL。这是“将表格提交到它来自的地方的最可靠,最简单的方法”。 没有理由使用,并且根本不提交表单(除非附加了事件处理程序来处理提交)。
我有一个表单,它使用以下命令发布数据:“method=“post”enctype=“multipart/form data” 发布的数据执行了一些计算,结果反馈到表单字段。“提交”按钮称为“计算”。如果(isset($_POST['Calculate'])) 这个很好用。但是,我添加了另一个按钮,名为Print,我想用它来发布数据,以便在另一个页面上使用。如果(isset($_POST['Prin