PHP会话不存储值

Mur*_*rad 2 php

第一页abc.html

< form action="xyz.php" method="post" >
< input type=text value="ABC" name="first" id="first" />
< /form>
Run Code Online (Sandbox Code Playgroud)

第二页xyz.php

session_start();

$var1 = $_Request['first'];
$_Session['myvar'] = $var1;
session_write_close();

echo "<a href='lkj.php'>click here</a>"
Run Code Online (Sandbox Code Playgroud)

第三页lkj.php

session_start();

echo $_Session['var1'];
Run Code Online (Sandbox Code Playgroud)

并且输出什么都没有,它完全是空白的,因为会话变量中没有任何内容.
你能帮我解决这个问题吗?

Mic*_*ski 6

您的情况不正确,并且变量标识符在PHP中区分大小写:

// Incorrect:
$var1 = $_Request['first'];
$_Session['myvar'] = $var1;
session_write_close();

// Should be:
$var1 = $_REQUEST['first'];
$_SESSION['myvar'] = $var1;
session_write_close();


// On lkj.php:
session_start();
echo $_SESSION['var1'];
Run Code Online (Sandbox Code Playgroud)

此外,而不是使用$_REQUEST我强烈建议使用$_POST.您的表单指定method='post'.

$var1 = $_POST['first'];
$_SESSION['myvar'] = $var1;
Run Code Online (Sandbox Code Playgroud)