Site et session

laloire33150 Messages postés 94 Date d'inscription dimanche 7 octobre 2007 Statut Membre Dernière intervention 25 novembre 2009 - 8 janv. 2009 à 17:45
laloire33150 Messages postés 94 Date d'inscription dimanche 7 octobre 2007 Statut Membre Dernière intervention 25 novembre 2009 - 9 janv. 2009 à 12:16
bonjour,

Voici mon soucis
tout fonctionnais tres bien et d'un coup voila le message que je recoit ,

Warning: Cannot modify header information - headers already sent by (output started at /home/laloire/public_html/centreformation/haut.php:4) in /home/laloire/public_html/centreformation/verifications.php on line 20

pouvez vous m'aider ?

4 réponses

laloire33150 Messages postés 94 Date d'inscription dimanche 7 octobre 2007 Statut Membre Dernière intervention 25 novembre 2009
8 janv. 2009 à 17:46
voici la page verification.php

<?php

/******************************************
** Script écrit par VINCENT REITZ
**
** Créé le 27 Mai 2006
**
** Dernière modification le 14 Février 2007 (ajout de la gestion des fichiers pour les membres connectés)
**
** Fichier de vérification pour savoir si le visiteur est connecté ou non et prendre les dispositions nécessaires
**
** Droits de reproduction autorisés
******************************************/

$session = addslashes($_SESSION['session']);

if(!@$_SESSION['session']) //Si aucune information de session, on indique au membre qu'il faut se connecter
{
if($adresse_site) //On redirige en se basant sur la variable du répertoire racine si elle existe (si la page recup_config.php a été inclue avant celle ci)
header('Location:'. $adresse_site.'index.php?erreur=connexion');

else //Sinon on fait une redirection basique qui peut échouer (en attendant de mettre une variable contenant un chemain relatif dans chaque page)
header('Location:index.php?erreur=connexion');

exit;
}

connexion(); //Connexion à MySQL

$verif = mysql_query("SELECT * FROM ". PREFIX ."membres WHERE identifiant='". $session ."' AND valide='1'") or die ('Erreur, impossible de savoir si la session existe'); //on vérifie si il existe une entrée avec cet identifiant
$verif = mysql_num_rows($verif);
if($verif === 0) //Si il n'en existe pas, on prend les dispositions nécessaires
{
session_unset(); //On détruit la session afin de ne pas faire de boucle infini
session_destroy();

if($adresse_site) //On redirige en se basant sur la variable du répertoire racine si elle existe (si la page recup_config.php a été inclue avant celle ci)
header('Location:'. $adresse_site.'index.php?erreur=connexion');

else //Sinon on fait une redirection basique qui peut échouer (en attendant de mettre une variable contenant un chemain relatif dans chaque page)
header('Location:index.php?erreur=connexion');

exit;
}

$requete = "SELECT * FROM ". PREFIX ."membres WHERE identifiant='". $session ."' AND valide='1'"; //Requète permetant de récup les infos du membre
$sql_donnees_membre = mysql_query($requete) or die ('Erreur, impossible de récupérer les informations du membre'); //Execution de la requete
$resultat_donnees_membre = mysql_fetch_array($sql_donnees_membre); //Triage de la requète

//Si dessous les variables concernant le membre qui seront utilisées dans le script
$email = $resultat_donnees_membre['email'];
$pseudo = $resultat_donnees_membre['pseudo'];
$id = $resultat_donnees_membre['id'];
$rang = $resultat_donnees_membre['rang'];
if($support_connectes == 1)
touch($prefix.'connectes/'.$pseudo.'.txt');

mysql_close(); //Fermeture de la connexion MySQL
?>
0
krolenain Messages postés 149 Date d'inscription lundi 7 février 2005 Statut Membre Dernière intervention 6 février 2009 1
8 janv. 2009 à 18:19
Salut,
le header already sent veut dire qu'un entete html à déjà été envoyé avant ta redirection header().
2 causes possibles:
-soit tu as un echo "quelque chose"
-soit ton code est après la balise <head> du html

J'ai pas le temps de lire ton code mais ca doit etre ca.

Bonne chance!
0
kohntark Messages postés 3705 Date d'inscription lundi 5 juillet 2004 Statut Membre Dernière intervention 27 avril 2012 30
9 janv. 2009 à 08:52
Salut,

3eme cause possible : 1 erreur (ce qui revient à envoyer des données au navigateur)
En l'occurence $_SESSION['session'] ne doit pas être définie.

Cordialement,

Kohntark -
0
laloire33150 Messages postés 94 Date d'inscription dimanche 7 octobre 2007 Statut Membre Dernière intervention 25 novembre 2009
9 janv. 2009 à 12:16
bonjour merci pour vos reponses

mais je nage un peu la lol

poouriez me montrer comment faire stp
0
Rejoignez-nous