你不需要session_start
之前if
。直接調用它:session_start();
。如果會議已經開始,它不會造成任何傷害。
看來你的「啓動會議」錯誤的概念。好了,不完全是錯的...你看:「在session_start()」不不「啓動對話」中,你可能會想感,也就是說,你把它一次和「會話已‘開始’ 」。不,你需要調用「在session_start」 總是,在每 PHP腳本將處理會話的開始。
例如,在login.php
:
session_start();
if ($user_and_pass_are_correct)
{
$_SESSION['username'] = $username;
}
在somepage.php
:
session_start();
echo 'User name is ' . $_SESSION['username'];
你還需要 「在session_start」 呼叫那裏。這並不意味着「會議的開始」。這意味着「初始化會話的東西,所以我可以使用會話」。
通常的做法是在「引導」類型的腳本中包含一個session_start
,並將其包含在所有其他腳本的開頭。
「bootstrap.php中」
<?php
session_start(); // first line of script
initialize_other_stuff();
「a_page.php」
<?php
include('bootstrap.php'); // first line of script
「another_page.php」
<?php
include('bootstrap.php'); // first line of script, always
如果我刪除if ,我g等我的瀏覽器以下消息: 注意:一個會議已經開始了 - 忽略在session_start() – sharath 2012-03-04 15:05:06
好吧,你可以保持'if'。我的條件改爲'如果(空(SESSION_ID()))' - 見http://br.php.net/manual/en/function.session-id.php( 「返回值」 一節) – 2012-03-04 15:08:51
作品!謝謝你們:) – sharath 2012-03-04 16:01:50