2016-03-05 57 views
1

你好我有一个表单和这个表单,当我提交它时,它转到另一个页面,但我的问题是,当我尝试读取会话值时它不工作在另一页上它不起作用,我真的不知道是什么问题。通过表单发送页面之间的变量会话

我拥有了我的形式在那里我得到我想,所以我失踪出头提出自己的价值观

<?php 
session_start(); 

?> 

<?php 

if(isset($_SESSION['yourName'])){ 
echo "<div>"; 
echo htmlentities($_SESSION['yourName']); 

echo "</div>"; 
}else{ 
    echo "fail"; 
} 


// Finally, destroy the session. 
?> 

<?php session_destroy(); 
?> 
+0

保持动作标签空白,如果邮寄到同一个页面,行动=“” – C2486

+1

为什么不张贴到2页我看不出有任何理由使用会话在这里的所有 – 2016-03-05 06:11:57

+0

同样的会话启动前检查会话ID。 – C2486

回答

0

编写代码的方式流动。这些不应该是action,因为您将表单提交到同一页面,然后重定向其他页面。

<?php session_start(); ?> 
<strong>Test Form</strong> 
<form action="" method="post"> 
<input type="text" name="yourName"/> 
<input type="submit" name="Submit" value="Submit!" /> 
</form> 
<?php 
if(isset($_POST['Submit'])) { 
    $yourName = $_POST['yourName']; 
    if (isset($yourName) && !empty($yourName)) { 
    $_SESSION['yourName'] = $yourName; 
    header('Location:payment.php'); 
    } 
} 
?> 
-1

OK,我找到了解决办法

<?php session_start(); ?> 
<strong>Test Form</strong> 
<form action="payment.php" method="post"> 
<input type="text" name="yourName"/> 
<input type="submit" name="Submit" value="Submit!" /> 
</form> 




<?php 

if(isset($_POST['Submit'])) { 
    $yourName = $_POST['yourName']; 


    if (isset($yourName) && !empty($yourName)) { 
    $_SESSION['yourName'] = $yourName; 
    } 



    if(isset($yourName) && !empty($yourName)) { 
    header('Location:payment.php'); 
    } 
} 
?> 

我的第二页第一页 首先:当你发送页面到页面的数据时,该操作应该是空的action="" 然后我的第二个错误是,我没有检查我的输入名称在会话后,我检查我发现我有diffe因此我让他们一样。 感谢的

的工作之一是这样的:第一页

<?php session_start(); ?> 
<strong>Test Form</strong> 
<form action="" method="post"> 
<input type="text" name="yourName"/> 
<input type="submit" name="Submit" value="Submit!" /> 
</form> 




<?php 

if(isset($_POST['Submit'])) { 
    $yourName = $_POST['yourName']; 


    if (isset($yourName) && !empty($yourName)) { 
    $_SESSION['yourName'] = $yourName; 
    } 



    if(isset($yourName) && !empty($yourName)) { 
    header('Location:payment.php'); 
    } 
} 
?> 

第二页是:

<?php 
session_start(); 

?> 

<?php 

if(isset($_SESSION['yourName'])){ 
echo "<div>"; 
echo htmlentities($_SESSION['yourName']); 

echo "</div>"; 
}else{ 
    echo "fail"; 
} 


// Finally, destroy the session. 
?> 

<?php session_destroy(); 
?>