+ Répondre à la discussion
Affichage des résultats 1 à 6 sur 6
  1. #1
    Invité régulier
    Inscrit en
    avril 2012
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : avril 2012
    Messages : 22
    Points : 5
    Points
    5

    Par défaut Problème de variables de session dans mon serveur

    Bonjour les amis,

    J'ai un problème avec les variables de session quand je mets mon code dans un serveur web j'ai les erreurs suivantes:
    Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at C:\wamp\www\Academie\Front-Office\haut_de_page.html:10) in C:\wamp\www\Academie\Front-Office\fonctions.php on line 53

    Warning: Cannot modify header information - headers already sent by (output started at C:\wamp\www\Academie\Front-Office\haut_de_page.html:10) in C:\wamp\www\Academie\Front-Office\fonctions.php on line 85

    alors qu'en localhost ca marche très bien.

    Voici mon fichier qui contient mes fonctions de validation d'une connexion et de démarrage d'une session que j'appelle dans la page menu_membre.php
    Code :
    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
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
     
    <?php
     
       //Fonction de connexion a la base de données
       function connexionBD()
       {
          $nom_serveur = "localhost";
          $utilisateur = "xxx";
          $mot_de_passe = "xxx";
          $base_de_donnees = "xxx";
     
          //Connexion au serveur
          mysql_connect($nom_serveur, $utilisateur, $mot_de_passe) or die("ECHEC CONNEXION AU SERVEUR !!!");
     
          //Sélection de la Base de données
          mysql_select_db($base_de_donnees) or die("ERREUR IMPOSSIBLE DE SE CONNECTER A LA BASE DE DONNEES !!!");
     
          mysql_query('SET NAMES utf8');
       }
     
       //Fonction de démarrage d'une session
       function demarrage()
       {
          session_start();
     
          if(!isset($_SESSION["id"]))
          echo"
             <script language='javascript'>
                alert('Veuillez vous connecter SVP...');
                document.location='../connexion.php';
             </script>
             ";
       }
     
       //Fonction de fermeture d'une session
       function fermeture()
       {
          session_start();
          session_destroy();
          echo"
             <script language='javascript'>
                alert('Au revoir!!!')
                document.location='../connexion.php';
             </script>";
       }
     
       //Fonction de vérification du login et du mot de passe
       function valid_connexion()
       {
          session_start();
     
          $login = $_POST['login'];
          $password = $_POST['password'];
     
          //Phase d'interrogation de la BD
          if(!(empty($login)) && !(empty($password)))
          {
             connexionBD();
             $requete = "SELECT * FROM users NATURAL JOIN profils WHERE user_nom='$login' and user_password='$password'";
             $resultat = mysql_query($requete) or die("Erreur execution requete:: $requete");
             $nb = mysql_num_rows($resultat); // Nombre de lignes retournées par la requete
             if($nb>0)// Utilisateur Authentifié...
             {
                echo"
                   <script type='text/javascript' language='javascript'>
                      var temp='CONNEXION REUSSIE! Vous allez être redirigé selon votre profil...'
                      alert(temp)
                   </script>";
     
                $user = mysql_fetch_array($resultat);
                $_SESSION["id"]=$user["user_code"];
                $_SESSION["login"]=$user["user_nom"];
                $_SESSION["mdp"]=$user["user_password"];
                $_SESSION["profil"]=$user["profil"];
     
                //Redirection selon le resultat
                if(($user['user_password']==$password) && ($user['user_nom']==$login) && ($user['profil']=="Administrateur"))
                {
                   header("Location: ../Back-Office/admin.php");
                }
                elseif (($user['user_password']==$password) && ($user['user_nom']==$login) && ($user['profil']=="Etudiant"))
                {
                   header("Location: Membres/index.php");
                }
             }
             else
             {
                include 'connexion.php';
                echo"
                   <script type='text/javascript' language='javascript'>
                      var temp='Votre login ou votre mot de passe est invalide!'
                      alert(temp)
                      document.location='connexion.php';
                   </script>";
             }
          }
          mysql_close();
       }
     
    ?>
    La page menu_membre:
    Code :
    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
     
    <?php
       require '../fonctions.php';
       demarrage();
    ?>
    <!DOCTYPE html>
    <html lang="fr">
    <head>
        <meta charset="utf-8" />
        <meta name="robots" content="index, follow" />
        <meta name="generator" content="Sublime Text 2" />
        <title></title>
        <link rel="stylesheet" href="../Design/styles.css" type="text/css" media="screen" />
        <link rel="shortcut icon" href="../images/favicon.ico" type="image/x-icon" />                  
        <script type="text/javascript" src="../js/jquery.js"></script>
        <script type="text/javascript" src="../js/slider.js"></script>
        <script type="text/javascript" src="../js/superfish.js"></script>
        <script type="text/javascript" src="../js/custom.js"></script>
    </head>
     
    <body>
    <div id="container">
        <div id="header">
            <h1><strong><a href="index.php"><strong>Académie de Formation</strong></a></strong></h1>
            <div class="clear"></div>
        </div>
        <div id="nav">
            <ul class="sf-menu dropdown">
                <li class="selected"><a href="index.php">Accueil</a></li>
                <li><a href="academie.php">L'Académie</a></li>
                <li><a href="informations.php">Informations Générales</a></li>
                <li><a href="emplois_du_temps.php">Emplois du temps</a></li>
                <li><a href="resultats.php">Mon Bulletin</a></li>
                <li><a href="contact.php">Contact</a></li>
                <li><a href="deconnexion.php">Déconnexion</a></li>
            </ul>
        </div>
    Et dans mon fichier index.php je fais comme 1ere instruction
    Code :
    1
    2
    3
    4
     
    <?php 
       require 'menu_membre.php';
    ?>
    Merci de votre aide!

  2. #2
    Expert Confirmé Avatar de Fench
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    mai 2002
    Messages
    2 348
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Groenland

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : mai 2002
    Messages : 2 348
    Points : 3 160
    Points
    3 160

    Par défaut

    Bonjour,

    Enléves les espaces avant les <?php, car ils sont considérés comme du html et d'ou ton message d'erreur ...
    Meuuh en AI à l'INRA
    Domaines: {java, php, js, jquery}{hibernate, doctrine}{MyLib, symfony, Zend}
    fait gagner du temps à ceux qui aident , donc un message avec la balise résolu laisse plus de temps pour résoudre d'autres problèmes (balise à cliquer en bas de l'écran)

  3. #3
    Invité régulier
    Inscrit en
    avril 2012
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : avril 2012
    Messages : 22
    Points : 5
    Points
    5

    Par défaut

    J'ai enlevé les espaces avant toutes mes balises php et j'ai même réenregistré mes fichiers en utf-8 sans bom avec notepad++ mais j'ai toujours le même problème Fench.

  4. #4
    Membre actif
    Homme Profil pro
    Développeur Web
    Inscrit en
    mars 2009
    Messages
    116
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : mars 2009
    Messages : 116
    Points : 163
    Points
    163

    Par défaut

    Et si tu mettais ton session_start(); avant d'appeler ta fonction.

    Code :
    1
    2
    3
    4
    5
    <?php
       session_start();
       require '../fonctions.php';
       demarrage();
    ?>

  5. #5
    Invité régulier
    Inscrit en
    avril 2012
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : avril 2012
    Messages : 22
    Points : 5
    Points
    5

    Par défaut

    Toujours les 2 mêmes erreurs Damien.

  6. #6
    Membre actif
    Homme Profil pro
    Développeur Web
    Inscrit en
    mars 2009
    Messages
    116
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : mars 2009
    Messages : 116
    Points : 163
    Points
    163

    Par défaut

    Tu dois supprimer tous les autres session_start de ton code source et en garder qu'un.

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •