我有一个页面,q.php它是由其id定义的用户提交的帖子(例如,q.php?id=1将使用该$id变量从数据库中提取所有其余信息的某个帖子).
我试图在同一页面上编写评论提交,并说明用户可能不会在该字段中输入任何内容.如果发生这种情况,我希望页面(例如q.php?id=1)再次加载错误消息.
我可以使用一个空变量来执行错误消息,然后通过表单激活的php文件给出一个值.但是,我遇到了导航回特定帖子的问题.我试图使用include('q.php?id=$id)$ id设置为数字,但我知道这不是它的目的,它不接受变量
我应该用什么呢?
编辑
answer.php(表单激活的文件):
require 'q.php';
$_GET['id'] = $id;
$_SESSION['error'] = "Please fill in all of the fields.";
Run Code Online (Sandbox Code Playgroud)
q.php:
if ($_SESSION['error'] !== 0) {
echo "<p style='color: #AA1111;'>".$_SESSION['error']."</a>";
unset($_SESSION['error']); // this isn't happening...
}
Run Code Online (Sandbox Code Playgroud)
如果您确实必须包含内联页面,则可以随时修改$_GET:
$_GET['id'] = $id;
require 'q.php';
Run Code Online (Sandbox Code Playgroud)
但是错误消息听起来像是可以使用会话变量或重定向来完成.重定向可能看起来像:
header('Location: q.php?id=' . $id . '&error=The+error');
exit();
Run Code Online (Sandbox Code Playgroud)
然后,检查$_GET['error']在q.php.使用一个会话变量,这将是大致相同的,除了没有添加error作为查询字符串参数,使用$_SESSION['error']和unset立即它.