2015-07-11 153 views
2

我知道我不能在同一個php頁面中使用兩個會話啓動代碼,但爲了更新用戶帳戶,我需要下面的代碼,並且我需要使用session_start兩次。一,檢查用戶是否沒有登錄,然後重定向他們,並禁止他們看到更新信息頁面,並且其他會話開始必須在那裏,以便我的會話變量可以在更新信息頁面中自動設置,如果用戶已登錄。更新用戶信息

無論如何,我收到此錯誤可以請你們給我看看工作方式嗎?如果有的話?

謝謝。 注意:一個會議已經開始了 - 忽略....

<?php session_start();  
if(isset($_SESSION['userid'])) { 
    } else { 
     header('Location: login.php'); 
    } 
?> 
<?php 

    $user = $_SESSION['userid']; 
    $myquery = "SELECT * FROM our_users WHERE `userid`='$user'"; 
    $result = mysqli_query($conn, $thequery); 
    $row = mysqli_fetch_array($result, MYSQLI_BOTH); 
    session_start(); /* Basically this right here gets ignored. */ 
    $_SESSION["user_first_name"] = $row['fn']; 
    $_SESSION["user_last_name"] = $row['ln']; 
    $_SESSION["user_email"] = $row['em']; 
    $_SESSION["user_password"] = $row['pw'];  
?> 

回答

0

在session_start()當你說:

我知道我不能在同一個使用兩個會話起始碼PHP

請檢查換句話說這個post

+0

,有沒有辦法解決這個權利? –

+0

你只需要刪除第二個session_start();它會工作。 – zilongqiu

+0

好了,問題是,在更新頁面中,如果我沒有兩個session_starts,那麼更新頁面中的更新字段將不會保存在html字段中的原始用戶憑證。 –