【发布时间】:2014-12-22 22:28:00
【问题描述】:
目前我正在处理存储会话并将其传递给下一个表单的问题,但是尽管我尝试启动会话并将变量存储在会话中,但它不起作用。请对此有所了解,谢谢!
MainForm.php
<?php
session_start();
require("inputValidation.php"); // This php file is just a file that does validation for my side
$validForm = true;
if ($_POST)
{
}
?>
<form class="form" action="nextform.php" role="form" method="post">
<input type="text" class="form-control" id="name" name="name" value= "<?php
if (isset($_POST['name']))
{
if (!validateRequired($_POST['name']))
{
$_SESSION['test'] = $_POST['name'];
$validForm = false;
}
if (validateRequired($_POST['name']))
{
$_SESSION['test'] = $_POST['name'];
$validForm = true;
}
}
?>
<input name="submit" type="submit" value="Submit" class="btn btn-primary">
nextform.php
print_r ($_SESSION);
问题是即使我在文本框名称中输入任何值,我也会被直接重定向到 nextform.php 而不获取我的会话值。为什么会这样?有什么方法可以在不更改action="nextform.php" 的情况下获得我的会话值?
谢谢!
对不起,我对会话和 PHP 还是新手,所以请多多包涵 :)
【问题讨论】:
-
你在哪里设置$_POST['name'],设置好了吗? session_start();也需要成为 nextform.php 中的第一件事——会话需要在您要使用的每个页面中启动!
标签: php html validation session post