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;

以前のエラーはなくなり、これが表示されます

注意:未定義の変数:以下の23行目のF:\ xampp \ htdocs \ Impossible game\index.phpのセッションは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部分は2つの異なるものです:

index.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 に答える