IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

problème à cause des sessions


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    175
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 175
    Points : 76
    Points
    76
    Par défaut problème à cause des sessions
    J'ai fait une page de réponse de formulaire et lorsque j'affiche cette page, j'ai la réponse d'erreur suivante.
    Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at c:\program files\easyphp1-8\www\projet\message.php:11) in c:\program files\easyphp1-8\www\projet\message.php on line 23

    voila mon code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
    <head>
    <title>Paul.Carrot</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-15" />
    <link href="style.css" rel="stylesheet" type="text/css" />
    </head>
    <body>
    <img src="image.php"/>
    <div id="menu">
    <ul id="menu">
    	<li><a href="index.htm">Actualités</a><li>
     	<li><a href="quisuisje.htm">Qui suis-je?</a></li>
    	<li><a href="sig.htm">La géomatique</a></li>
    	<li><a href="..">Le webmapping</a></li>
    	<li><a href="liens.htm">Liens et cours</a></li>
    	<li><a href="mecontacter.htm">Me contacter</a></li>
    </ul>
    </div><div id="paragraphe">
    <h1>Me contacter</h1>
    <?php
    session_start();
    $prenom = $_POST['prenom'];
    $nom = $_POST['nom'];
    $email = $_POST['email'];
    $message = $_POST['message'];
    $verif=$_POST['antispam'];
    $n=1;
    if (strlen($nom)<=2){
    die ("ERREUR : Votre nom doit contenir plus de deux caractères");
    }
    else {
    $n++;
    }
    if(eregi("[aeiouy]", $nom)){
    $n++; }
    else {
    die ("ERREUR : votre nom doit comporter des voyelles");
    }
    if (strlen($prenom)<=1){
    die ("ERREUR : Votre prenom doit contenir plus de un caractère");
    }
    else {
    $n++;
    }
    if(eregi("[aeiouy]", $prenom)){
    $n++;
    }
    else {
    die ("ERREUR : votre prenom doit comporter des voyelles");
    }
    
    if (eregi("^[[:alnum:]\.-_]+@[[:alnum:]\._-]+\.[[:alpha:]]{2,3}$", $email)){
    $n++;
    }
    else {
    die ("votre E-mail n'est pas valide");
    }
    if($_SESSION['verif']==$verif) {
    $n++;
    }
    else {
    die ("le mot de passe n'est pas valide");
    }
    
    if ($n==7){
    		$liendb = mysql_connect("localhost", "root","");
    		mysql_select_db("form");
    		$sql = "INSERT INTO inscription (prenom, nom, email, message) VALUES ('$prenom' , '$nom', '$email', '$message')";
    		mysql_query($sql);
    		mysql_close($liendb);
    		session_destroy ();
    		echo "merci de m'avoir laissé ce message". $prenom . $nom;
    }	?>	
    </div><div id="bandeau">
    <p> hehehehehehehhehe</p>
    </div>
    </body>
    le problème est que mon code marche, il y a juste ce message d'erreur qui pollu mon affichage. il semblerait que cela vienne de la session ouverte ligne 23. Si quelqu'un a déjà été confronté a ce problème...

  2. #2
    Membre expert

    Profil pro
    imposteur
    Inscrit en
    Avril 2003
    Messages
    3 308
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : imposteur

    Informations forums :
    Inscription : Avril 2003
    Messages : 3 308
    Points : 3 377
    Points
    3 377
    Par défaut
    Avant de poster sur le forum, il faut faire une recherche dans la
    http://php.developpez.com/faq/?page=...s_already_sent

  3. #3
    Invité
    Invité(e)
    Par défaut
    +1 probleme plus que recurrent

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    175
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 175
    Points : 76
    Points
    76
    Par défaut
    je suis vraiment désolé mais je ne comprend pas ce que sont les headers..
    Le déplacement de ma session_start ne fait que déplacer mon problème.

  5. #5
    Membre expert

    Profil pro
    imposteur
    Inscrit en
    Avril 2003
    Messages
    3 308
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : imposteur

    Informations forums :
    Inscription : Avril 2003
    Messages : 3 308
    Points : 3 377
    Points
    3 377
    Par défaut
    Citation Envoyé par polo42
    je suis vraiment désolé mais je ne comprend pas ce que sont les headers..
    Le déplacement de ma session_start ne fait que déplacer mon problème.
    Fais des recherches sur le forum, le problème a été traité des dizaines de fois

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    175
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 175
    Points : 76
    Points
    76
    Par défaut
    ok j'ai trouvé. il ne faut pas écrire de code avant l'envoi des "header" qui dans mon cas se faisait par la fonction session_start();. Du coup j'ai pu résoudre mon problème en mettant session_start(); en début de code.

    merci pour vos réponses.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Sécurité] Problème avec des variables de session
    Par zoom61 dans le forum Langage
    Réponses: 28
    Dernier message: 18/08/2006, 21h05
  2. Réponses: 42
    Dernier message: 04/08/2006, 23h36
  3. #include bidirectionnel cause des problèmes
    Par matrox dans le forum C++
    Réponses: 4
    Dernier message: 21/06/2006, 16h46
  4. [VB6]Problème dajout dans une Table Access à cause des group
    Par bb62 dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 01/02/2006, 10h06
  5. Problème d'addition à cause des NULL
    Par Oluha dans le forum Langage SQL
    Réponses: 6
    Dernier message: 29/03/2005, 13h53

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo