创建表单并尝试将两个页面的变量携带到结果页面。我尝试了$ GET和$ POST,它从page1.php到results.php工作正常,但是当我更改为$ SESSION时,变量未在results.php上传递或回显。这是page1的php代码,它甚至不能直接用于结果!不确定我的代码或服务器是否有问题? 第1.php页:
<?php session_start();?>
<?php
$name = $_SESSION['name'];
?>
<FORM action="results.php" method="post" enctype="multipart/form-data" id="questionnaire">
<input type="text" name="name" id="name" />
Results.php:
<?php session_start();?>
<html>
<body>
<?php
$name = $_SESSION['name'];
echo $name; ?>
</body>
</html>
答案 0 :(得分:2)
请尝试执行以下代码段
<?php session_start();?>
<?php
if($_SERVER['REQUEST_METHOD']=='POST')
{
$name = $_POST['name'];
$_SESSION['name']=$name;
}
?>
<FORM action="results.php" method="post" enctype="multipart/form-data" id="questionnaire">
<input type="text" name="name" id="name" />
实际上你的$ _SESSION ['name']的代码片段值没有设置。所以我为会话变量定义了值,其中包含来自HTML表单的发布值
答案 1 :(得分:2)
您忘记了表单中的结束标记,并且您没有提交按钮
<FORM action="results.php" method="post" enctype="multipart/form-data" id="questionnaire">
<input type="text" name="name" id="name" />
<input type="Submit" value="Submit">
</FORM>
然后在results.php
<?php session_start();?>
<html>
<body>
<?php
$_SESSION['name']=$_POST['name'];
echo $_SESSION['name']; ?>
<br><br>
<a href="page2.php">page 2</a>
</body>
</html>
然后我创建了这个page2.php
<?php session_start();?>
<html>
<body>
Hi, I am still <?php echo $_SESSION['name'];?>
</body>
</html>
我身边的一切都很好。
答案 2 :(得分:0)
我认为你在这一行反转了变量:
<?php
$name = $_SESSION['name'];
?>
您可能想要这样做:
<?php
$_SESSION['name'] = $name;
?>
答案 3 :(得分:0)
首先,您将名称变量分配给会话变量
<?php session_start();?>
<?php
$_SESSION['name'] = $name;
?>
<FORM action="results.php" method="post" enctype="multipart/form-data" id="questionnaire">
<input type="text" name="name" id="name" />
答案 4 :(得分:0)
Results.php:
<?
session_start();
$name = isset($_POST['name'])?$_POST['name']:'';
if($name){
$_SESSION['name']=$name;
}
?>
<html>
<body>
<?php echo $name; ?>
</body>
</html>
答案 5 :(得分:0)
Try....
Page 1.php : <?php session_start();
$_SESSION['name'] = isset($_POST['name']) ? $_POST['name'] : '';
?>
<FORM action="results.php" method="post" enctype="multipart/form-data" id="questionnaire">
<input type="text" name="name" id="name" />
Results.php:
<?php session_start();?>
<html>
<body>
<?php
$name = $_SESSION['name'];
echo $name; ?>
</body>
</html>