J'utilise le code suivant dans un fichier d'inclusion. Parce qu'il l'a utilisé dans deux cas dans mon code, j'ai voulu le séparer en un autre fichier d'inclusion et l'utiliser avec require_once() là où c'est nécessaire. Cependant, j'ai remarqué que si je fais cela, les cookies ne seront pas définis. Tout le reste semble fonctionner cependant. Est-ce un bug ou ce ne peut tout simplement pas être fait de cette façon.Le cookie du jeu PHP ne fonctionne pas à partir du fichier include
J'ai appris PHP seulement pendant deux semaines alors s'il vous plaît, prenez-le doucement sur moi.
Merci!
if(mysqli_num_rows($checklogin) == 1)
{
// set variables
$row = mysqli_fetch_array($checklogin);
$email = $row['Email'];
// create login sessions
$_SESSION['UserName'] = $username;
$_SESSION['Email'] = $email;
$_SESSION['LoggedIn'] = 1;
$cbxRememberMe = $_POST['cbxRememberMe'];
// if remember me is checked
if(isset($cbxRememberMe) && $cbxRememberMe == '1')
{
$row = mysqli_fetch_array($checklogin);
// create cookies for autologin
$expire = time() + AUTO_LOGIN_DURATION;
$cookie_un = sha1(sha1($row['UserName']));
$cookie_pass = sha1(sha1($row['Password']));
setcookie('user', $cookie_un, $expire);
setcookie('pass', $cookie_pass, $expire);
}
// get user's IP address
$lastloginip = $_SERVER['REMOTE_ADDR'];
// DB QUERY: update database activity
// ------------------------------------------------------------------
$updateactivity = mysqli_query($conn,"UPDATE users SET LastLoginDate = NOW(), LastActivityDate = NOW(), LastLoginIP = '$lastloginip' WHERE UserName = '$username'")
or die($updateactivity_error);
// ------------------------------------------------------------------
// redirect back to login to refresh
header('Location: login.php');
}
Pouvez-vous vérifier votre journal d'erreurs pour les avertissements concernant les en-têtes déjà envoyés ou d'autres erreurs/avertissements? –
Si vous voulez réutiliser ce code, il vaudrait mieux le mettre dans une fonction. De cette façon, même si vous utilisez require_once, vous pouvez l'appeler à tout moment. –