2016-04-18 95 views
0

我遇到了會話變量問題。幾天前它工作。我在mamp 3.5和php 7.0(在Mac上)。我的網站工作正常,這只是一個電腦問題。 在Windows上一切正常,但在我的Mac上,當我登錄他創建一個會話變量,但在下一頁會話變量是空的。PHP會話變量停止工作

在我朋友的電腦(Mac上太)沒有工作......

這裏是我的登錄代碼:

<form method="post" action="connexion_prof.php" id="formulaire" name="formulaire" novalidate> 
     <label for="Identifiant">Identifiant :</label> 
     <input type="text" class="form-control" id="identifiant" name="identifiant" required data-validation-required-message="Entrer un identifiant."> 

     <label for="Mdp">Mot de passe :</label> 
     <input type="password" class="form-control" id="mdp" name="mdp" required data-validation-required-message="Entrer un mot de passe."> 

     <input type="checkbox" name="cookie" id="cookie"/> <label for="cookie">Se souvenir de moi.</label> 

     <input type="submit" id="connexion" name="Connexion" value="Connexion" class="btn btn-primary"> 
</form> 

這是我的connexion_prof.php代碼:

$db = mysqli_connect('localhost', 'root', 'root'); 
mysqli_select_db($db,'Projet') or die(mysqli_error()); 

And:

$sql = "select Password, Statut, Nom, Prenom, ID, Statut from User where Username='".$identifiant."'"; 
$req = mysqli_query($db, $sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysqli_error()); 

$data = mysqli_fetch_assoc($req); 
$_SESSION['Username'] = $identifiant; 
$_SESSION['Nom'] = $data['Nom']; 
$_SESSION['Prenom'] = $data['Prenom']; 
$_SESSION['id'] = $data['ID']; 
$_SESSION['Statut'] = $data['Statut']; 
+0

你能發表一些代碼嗎? – Panda

+0

已編輯,我添加了一些代碼 – FlorianSL

+0

您是否在所有文件的開頭包含'session_start();'? – Panda

回答

0

我也可以看到在PHP.ini文件中使用標識符來獲取發佈請求參數(例如$ identifiersiant)而不是PHP全局$ _POST數組中的配置差異,請嘗試使用$ _POST ['identifiant']更改它看看這是否能解決你的問題;除非你手動創建了這些變量,但它們沒有設置,但是PHP確實允許將值映射到變量的配置,但默認情況下該配置是禁用的。

讓我知道這是否解決了問題