Problème avec la création de COOKIE
Résolu
rubikspirit
-
rubikspirit -
rubikspirit -
Bonjour,
Je vous écris parce que je développe un site et je voudrais créer un système de connexion des membres avec des Cookies mais j'ai un peu de mal...
J'ai rédigé mon code mais je rencontre un problème lorsque je veux l'utiliser.
J'ai un fichier nommé adm_connect.php où se trouve le formulaire avec 2 champs :
- login
- password
et j'ai également la page adm_connectOK.php avec le code qui permet de vérifier le login et le password et de mettre en Cookie les données. Voila le code qui me pose problème :
<?php
$db = mysql_connect($serveur, $login, $password);
mysql_select_db($bd,$db);
$loginOK = false;
if ( isset($_POST) && (!empty($_POST['login'])) && (!empty($_POST['password'])) ) {
extract($_POST);
$sql = 'SELECT * FROM user WHERE pseudo="'.addslashes($login).'"';
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
if (mysql_num_rows($req) > 0) {
$data = mysql_fetch_assoc($req);
if ($password == $data['password']) {
$loginOK = true;
}
}
}
if ($loginOK) {
setcookie("pseudo", $data['pseudo'], time()+36000);
echo 'Bienvenue sur votre espace membre !';
}
else {
echo 'Une erreur est survenue, veuillez réessayer !';
}
?>
Lorsque je test la page, j'ai une erreur qui me dit :
Warning: Cannot modify header information - headers already sent by (output started at /home2/phonerom/public_html/newversion/pages/adm_connectOK.php:7) in /home2/phonerom/public_html/newversion/pages/adm_connectOK.php on line 99
Bienvenue sur votre espace membre !
Je précise que la ligne 99 correspond à la ligne où ce situe le "setcookie("pseudo", $data['pseudo'], time()+36000);"
Pouvez vous m'aider à résoudre ce problème ?
Merci beaucoup de m'avoir lu...
Précision : en local ce code fonctionne parfaitement mais sur le serveur distant je me retrouve avec cette fameuse erreur...
Je vous écris parce que je développe un site et je voudrais créer un système de connexion des membres avec des Cookies mais j'ai un peu de mal...
J'ai rédigé mon code mais je rencontre un problème lorsque je veux l'utiliser.
J'ai un fichier nommé adm_connect.php où se trouve le formulaire avec 2 champs :
- login
- password
et j'ai également la page adm_connectOK.php avec le code qui permet de vérifier le login et le password et de mettre en Cookie les données. Voila le code qui me pose problème :
<?php
$db = mysql_connect($serveur, $login, $password);
mysql_select_db($bd,$db);
$loginOK = false;
if ( isset($_POST) && (!empty($_POST['login'])) && (!empty($_POST['password'])) ) {
extract($_POST);
$sql = 'SELECT * FROM user WHERE pseudo="'.addslashes($login).'"';
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
if (mysql_num_rows($req) > 0) {
$data = mysql_fetch_assoc($req);
if ($password == $data['password']) {
$loginOK = true;
}
}
}
if ($loginOK) {
setcookie("pseudo", $data['pseudo'], time()+36000);
echo 'Bienvenue sur votre espace membre !';
}
else {
echo 'Une erreur est survenue, veuillez réessayer !';
}
?>
Lorsque je test la page, j'ai une erreur qui me dit :
Warning: Cannot modify header information - headers already sent by (output started at /home2/phonerom/public_html/newversion/pages/adm_connectOK.php:7) in /home2/phonerom/public_html/newversion/pages/adm_connectOK.php on line 99
Bienvenue sur votre espace membre !
Je précise que la ligne 99 correspond à la ligne où ce situe le "setcookie("pseudo", $data['pseudo'], time()+36000);"
Pouvez vous m'aider à résoudre ce problème ?
Merci beaucoup de m'avoir lu...
Précision : en local ce code fonctionne parfaitement mais sur le serveur distant je me retrouve avec cette fameuse erreur...
A voir également:
- Problème avec la création de COOKIE
- Creation de compte google - Guide
- Creation de site web - Guide
- Creation compte gmail - Guide
- Media creation tool - Télécharger - Systèmes d'exploitation
- Creation compte vinted - Guide
2 réponses
Salut,
bon j'avoue que j'ai eu la flème de lire ton post !lol
Mais je pense que l'erreur est une erreur récurente !
Vérifie bien que tu es mis le session_start(); avant tout code HTML, donc, tout en hait de la page!
Et n'oublie pas que si tu inclus des pages, véirifie que les inclusions qui sont avant le session_start() ne génère pas de HTML !
A+
Gaerebut
bon j'avoue que j'ai eu la flème de lire ton post !lol
Mais je pense que l'erreur est une erreur récurente !
Vérifie bien que tu es mis le session_start(); avant tout code HTML, donc, tout en hait de la page!
Et n'oublie pas que si tu inclus des pages, véirifie que les inclusions qui sont avant le session_start() ne génère pas de HTML !
A+
Gaerebut
Oui c'est vrai que mon post était assez long lol...
En tout cas merci de ta réponse mais en effet, j'ai pu me renseigner cette nuit un peu sur cette histoire de header et j'ai placer mon code tout en haut de la page, depuis, aucun soucis !
C'était beaucoup de temps perdu pour pas grand chose lol.
En tout cas, merci de ta réponse :D
En tout cas merci de ta réponse mais en effet, j'ai pu me renseigner cette nuit un peu sur cette histoire de header et j'ai placer mon code tout en haut de la page, depuis, aucun soucis !
C'était beaucoup de temps perdu pour pas grand chose lol.
En tout cas, merci de ta réponse :D