ここで何が欠けていますか?これは私のPHPファイルです:
<?
session_start();
echo print_r($_SESSION);
echo "<br>";
echo print_r($_POST);
// Save input in session
$_SESSION = $_POST;
echo "test1";
?>
<br>
test2
このファイルはフォーム送信からアクセスされ、投稿データが存在すると確信しています。出力は次のとおりです。
配列 ( [ログイン] => 1 ) 1
配列 ( [名前] => テスト [タイプ] => テスト ) 1 テスト
2
そしてそれは私には意味がありません。session
中身もpost
中身も問題なく印刷されています。
しかし、$_SESSION = $_POST;
は失敗したように見え、 までの残りのスクリプトは応答を返しません。これは、テキストが出力されていない?>
ため明らかです。test1
で何が起こるかわかりません$_SESSION = $_POST;
。私が SO や他の場所で見つけたすべての質問は、セッションに投稿データを保存するこの方法を提供します。
session_start();
出力の前に必要であることは承知しています。この場合、他にも必要なものはありますか?
私は何が欠けていますか?
更新 - テストファイル
完全なテスト ファイル (リンクを削除) の正確なコードは次のとおりです。
<?
session_start();
?>
<html>
<head>
</head>
<body>
<?
echo print_r($_SESSION);
echo "<br>";
echo print_r($_POST);
// Save input in session
$_SESSION = $_POST;
echo "test1";
?>
<p>test2</p>
<form method="post" action="test.php">
Type something to test: <input type="text" name="testfield" id="testfield">
<input type="submit" value="Submit">
</form>
</body>
</html>
更新 - 解決しましたか?
よし、これで解決。しかし、これは奇妙です...
問題はコメントが原因のようです。括弧//
内でスクリプトが実行されないようにします。<?..?>
コメントを削除すると、// Save input in session
機能します...?
ここで何が欠けていますか?それはいくつかのphp設定か何かでなければなりません。または、変更されたファイルまたはスクリプト データの可能性があります。@CodeCaster が機能していたので、私の PC で何かが起こったと思います...しかし、コメントは他の場所でも機能しますか? 誰もこれを見たことがありますか?