我在這裏錯過了什麼?這是我的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
TEST2
,它使對我沒有意義。內容的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有它的工作,我的個人電腦上發生了這樣的事情......但評論工作在其他地方?有沒有人見過這個?
你'echo「test1」'你得到一個結果'test2'?這是同一個腳本嗎?是用'post'方法向該腳本提交的任何內容? – Gntem 2012-07-28 12:57:05
請張貼實際的代碼,因爲您發佈的代碼確實有效。此外,如果PHP似乎「沒有打印任何內容失敗」,請啓用錯誤報告。 – CodeCaster 2012-07-28 12:57:47
更正。我錯過了最後一行 – Steeven 2012-07-28 12:58:44