【发布时间】:2013-10-09 21:33:19
【问题描述】:
这是一个如此简单的问题,恐怕我错过了一些基本的东西,所以请随意羞辱我,但我很难过。
我的目标:制作一个“继续”按钮来重新加载相同的页面,但增加 ?Page= 参数对 GET 可见。
我目前的方法:定义应该加载的新 URL(这个有点工作)
$_SESSION['NextPage'] = $_SESSION['Page']+1;
$_SESSION['NewURL'] = $_SESSION['CurrentFile'] . '?Page=' . $_SESSION['NextPage'];
// N.B: $_SESSION['CurrentFile'] just specifies the URL of the current page.
// Note also that there should ALWAYS be a ?Page= parameter in the URL, even if it evaluates to NaN or something weird.
然后,稍后会调用一个函数来运行此代码并创建一个提交按钮。正如预期的那样,按钮在那里,但没有按预期工作:下面的代码和详细信息。
echo "<tr><td><form action='" . $_SESSION['NewURL'] . "' method='GET'> <input type='submit' value='Continue'></form> </td></tr>";
问题:当表单提交时,它不会在 URL 中附加任何 ?Page= 参数,无论是在 Chrome 还是 Safari 中。这是因为此表单中未指定 Page 参数吗?如果是这样,一定有办法解决这个问题,对吧? $_SESSION['NextPage'] 是一个会话变量,用于大声呼喊!更不用说当我在函数中回显$_SESSION['NewURL'] 时,可以在那里访问信息,?Page=2 等等。它只是没有推送到 URL。不幸的是,页面设置为根据$_GET['Page'] 的值显示不同的内容,现在没有任何东西可以控制该过程。
如果我刚刚犯了语法错误或其他什么,我会感到尴尬,但也松了一口气。我只是找不到它,也不知道该去哪里。谢谢!
【问题讨论】:
标签: php html parameters get form-submit