1

php セッションを使用してユーザー名を 2 番目のページに渡したいのですが、エラーが表示されます。


Notice: 未定義のインデックス: nam in D:\software 2\wamp\wamp\www\session\s2.php 行 5


私の最初のページ(s1.php)はこのようなものです

<html>
<head>
<?php
  session_start();     

?>

</head>
<body>
<p>hello</p>


<form method="get" action=" http://localhost/session/s2.php">
<input type="text" name="nam"><br>
<input type="submit" value="Submit"><br>


</form>

</body>
</html>

私の2番目のページ(s2.php)は次のとおりです

<html>
   <head>
 <?php 
   session_start();
  echo $_SESSION['nam'];
?>
</head>
here is the second page
<body>

</body>
</html>

ありがとう

4

4 に答える 4

1

変数はセッションに自動的に挿入されません。何らかの方法でそれらを挿入する必要があります。フォーム$_GETによって投稿された get パラメータから変数を取得したい場合は、探しているものです。

例えば:

$_SESSION['name'] = $_GET['name'];

フォームの扱いを見てみましょう

于 2013-06-23T20:53:33.230 に答える
0

PHP では、フォームの変数は GET または POST 経由で渡されます。あなたの場合、あなたは使用しました

<form method="get" action=" http://localhost/session/s2.php">

したがって、型は GET ( method="get") です。GET 変数を読み取るには、_SESSION ではなく _GET を使用します。POST 変数が必要な場合は、_POST を使用します。

あなたの場合、_GET['nam']代わりに使用します_SESSION['nam']

于 2013-06-23T20:53:24.827 に答える
0

次のいずれかを行う必要があります。

この行を echo $_SESSION['nam']; の前に追加します。$_GET['nam']=$_SESSION['nam'];

または echo $_GET['nam'];

幸運を

于 2013-06-23T21:14:37.803 に答える
0

セッション開始を一番上に置く必要があります

<?php
  session_start();     

?> 
<html>
<head>

ほとんどの場合、生成されたエラーは表示されません。

また、データが送信された後、まだ SESSION にはありません。$_GET['name']

ローカル マシンでの作業中にを設定error_levelすることをお勧めします。E_ALL

于 2013-06-23T20:52:37.370 に答える