PHP通过位置名传递变量
我在工作中继承了这个网站,它是用php5、html4和javascript编写的。他们将变量从一个页面传递到另一个页面的方式如下:PHP通过位置名传递变量,php,html,post,session-variables,Php,Html,Post,Session Variables,我在工作中继承了这个网站,它是用php5、html4和javascript编写的。他们将变量从一个页面传递到另一个页面的方式如下: filename.php?variable=value&secondvariable=secondvalue 所以当我提交一份我见过的表格时 <form method="post" name="auth" action="login.php?logon=logon"> 也许我对这个问题看得太简单了,但是你不能通过邮寄的方式来传递这个方法 &l
filename.php?variable=value&secondvariable=secondvalue
所以当我提交一份我见过的表格时
<form method="post" name="auth" action="login.php?logon=logon">
也许我对这个问题看得太简单了,但是你不能通过邮寄的方式来传递这个方法
<form method="post" name="auth" action="login.php">
<input type="hidden" name="logon" value="logon">
或者,在login.php中使用
$logon = $_GET['logon'];
仍然可以工作使用PHP的提取函数将变量从数组导入到当前符号表中
extract($_POST);
extract($_GET);
文件:
如下重写以调试和显示所有变量的值:
if (!empty($_POST)) { // this line was previously if ($logon === "logon"){
// only reaches here on a post request, i.e. form is submitted
die(print_r($_REQUEST)); // will show all $_POST, $_GET, and $_COOKIE values that currently are set ---> see http://php.net/manual/en/reserved.variables.request.php
}
确认密钥登录确实存在后,通过将上面die语句中的$\请求更改为$\ GET或$\ POST,查看它是否存在于$\ GET或$\ POST数组中
这些可能会给你一些线索,告诉你正在发生什么。也许……请展示一些你的php代码哦,伙计,遗留代码,趁你还可以的时候运行吧!你到底想看什么?我可以给出更多的例子。在login.php中处理Post请求的地方发布一个代码块,特别是处理“logon”的部分。这是我在几个案例中使用的解决方法,但不能在所有案例中使用,也不能解决根本问题。$\u GET['var']应该从URL中检索任何变量,因此了解为什么这对您来说是一个问题将是一件有趣的事情,例如?这很有效!非常感谢。我仍然不知道为什么旧方法会起作用,但将这些添加到login.php的行中正好满足了我的需要。这对于将来的调试也非常有用。谢谢。当然,很高兴我能帮上忙。
extract($_POST);
extract($_GET);
if (!empty($_POST)) { // this line was previously if ($logon === "logon"){
// only reaches here on a post request, i.e. form is submitted
die(print_r($_REQUEST)); // will show all $_POST, $_GET, and $_COOKIE values that currently are set ---> see http://php.net/manual/en/reserved.variables.request.php
}