检查哪个页面称为php?

检查哪个页面称为php?,php,Php,以下是我正在处理的问题: 假设我有一些php页面: <?php // do php stuff ?> 我有两个HTML页面,动作将它们发送到这个php页面。在这个php页面上,如果它来自一个html页面,我希望它做一件事,如果它来自另一个html页面,我希望它做另一件事。我无法向php页面传递任何显式变量,我需要检查哪个页面称为php 我试过: $\u SERVER['PHP\u SELF']当我访问此页面时,它似乎没有发送引用页面。 $\u SERVER['HTTP\

以下是我正在处理的问题:

假设我有一些php页面:

<?php
    // do php stuff
?>

我有两个HTML页面,动作将它们发送到这个php页面。在这个php页面上,如果它来自一个html页面,我希望它做一件事,如果它来自另一个html页面,我希望它做另一件事。我无法向php页面传递任何显式变量,我需要检查哪个页面称为php

我试过:

$\u SERVER['PHP\u SELF']
当我访问此页面时,它似乎没有发送引用页面。
$\u SERVER['HTTP\u REFERER']
这将为我寻找的页面提供上一页

例如:

htmlpage1
formcalls
php
page-->我想要一些php中包含
htmlpage1
的变量。
htmlpage2
formcalls
php
page-->我想要一些php中包含
htmlpage2
的变量


谢谢你的帮助。请告诉我是否有办法澄清问题。

如果域不同,您可以使用:

$_SERVER['SERVER_NAME'];
但在所有情况下,这都会有所帮助:

$_SERVER['REQUEST_URI'];

提供所调用的完整URL。

正如Think Different所说,表单中的隐藏字段可能是最好的选择,因为您不想修改URL。在这种情况下,您可以让表单通过POST请求提交,并使用
$page=$\u POST['your\u HIDDEN\u VARIABLE\u HERE']

检索数据。因此,如果$\u SERVER['HTTP\u REFERER']起作用,问题是什么?它不起作用。它似乎提供了我要查找的页面之前的页面。只要将表单操作更改为
mypage.php?from=page1
mypage.php?from=page2
,在mypage.php中,如果使用post方法,您可以获得类似
$page=$\u get['from']
的页面信息。否则,从添加一个名为的隐藏字段,并按上述方式输入值。@ThinkDifferent“我无法将任何显式变量传递到PHP页面”将停止该操作。@ThinkDifferent感谢您的回答。我知道我可以这样做,但正如我在问题中所说的,我希望在不显式传递任何其他变量的情况下这样做。这将给出当前页面的URI和主机,而不是调用它的页面的URI和主机。这就是我阅读问题的方式,否则HTTP_REFERER将为他工作。感谢您的回答,不,域没有区别。我将阅读关于
\u URI
@PassKit的文章,如果
HTTP\u REFERER
按照询问者的要求做了,那么这个问题就不存在了。请注意,这将需要启动页面上的一些Javascript来取消GET请求并在其位置提交POST请求。他已经在执行POST请求,因为他正在使用表单操作并且不修改url(或者至少我是这样读的)