0

您好,我正在尝试将来自 post 方法的信息设置为一个变量,该变量将一个名为 name 的会话设置为用户输入的值。我收到以下错误:

注意:未定义索引:第 18 行 F:\xampp\htdocs\Impossible game\index.php 中的名称

这是第 18 行: $session = $_POST['name'];

<form action="ms1.php" method="POST">
Name <input type="text" name="name">
<input type="Submit" value="Begin">
</form>
<?php
$session = $_POST['name']; 
session_start();
$_SESSION['name'] = $session;

以前的错误消失了,现在出现了

注意:未定义变量:F:\xampp\htdocs\Impossible game\index.php 中的会话在下面第 23 行是第 23 行

 $_SESSION['name'] = $session;
4

3 回答 3

1

下面的代码已注释但未经测试。如果他们有任何问题,请告诉我。

    <?php
    if(isset($_POST['name'])){           //if the post has been set
        $session = $_POST['name'];       // Store the session in the variable
        session_start();
        $_SESSION['name'] = $session;    // Store the name in a session for later use
header("location:index.php");    // Redirect the user     ##UPDATE##
    }   else    {
        //if post has not been set, show the form
    ?>
    <form action="ms1.php" method="POST">
    Name <input type="text" name="name">
    <input type="Submit" value="Begin">
    </form>
    <?php
    }
于 2012-04-07T12:18:59.070 回答
0

您应该在使用它们之前检查是否设置了变量、索引、偏移量。

if (isset($_POST['name']))
{
   $session = $_POST['name']; 
}
于 2012-04-07T11:24:37.600 回答
0

首先,HTML 部分和 PHP 部分是两个不同的东西:

索引.html

<form action="ms1.php" method="POST">
      Name <input type="text" name="name">
      <input type="Submit" value="Begin">
</form>

ms1.php

<?php
     if (isset($_POST['name']))
             $session = $_POST['name']; 

     session_start();
     $_SESSION['name'] = $session;
?>
于 2012-04-07T11:24:59.507 回答