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 :

propagation de session_start() [PHP 5.6]


Sujet :

Langage PHP

  1. #1
    Membre confirmé Avatar de papyphp
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    438
    Détails du profil
    Informations personnelles :
    Âge : 73
    Localisation : Belgique

    Informations professionnelles :
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2005
    Messages : 438
    Points : 587
    Points
    587
    Par défaut propagation de session_start()
    Bonjour à tous,

    Dans un fichier index.php j'ai Dans ce fichier j'ai un switch dont le but est d'inclure des fichier php.
    Dans ce switch j'ai un case qui fait l'include d'un fichier identification.php.

    Mon problème est le suivant :
    Dans identification.php je mets et j'obtiens une
    Notice: A session had already been started - ignoring session_start() in /home/pg/site/identification.php on line 4
    Puisque php me le signale gentiment, je commente la ligne.
    Plus de réclamations mais il m'est impossible de récupérer quoique ce soit dans la variable $_SESSION.

    Quand je décommente la ligne litigieuse, le NOTICE est toujours présent mais la variable $_SESSION s'est peuplée.

    Je n'aime pas trop enlever les NOTICES pour le moment.

    Quelqu'un voit une solution?

    D'avance merci
    Lu kinze d' awousse, la Vierje arandje û dusbrôle lu timp.

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,
    session_start() se déclare UNE SEULE FOIS dans la page (en 1ère ligne de préférence).

    Les fichiers "inclus" font partie intégrante de la page. Donc pas de session_start() dedans.

    Si l'erreur persiste, montre-nous au moins comment tu inclus les fichiers et le (début du) code de chacun.

    On peut aussi écrire :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    <?php if( session_id()=='' ){ session_start(); }

    N.B. Et je suis curieux de savoir ce que veut dire (et en quelle langue, dialecte, argot,... ?) :
    Lu kinze d' awousse, la Vierje arandje û dusbrôle lu timp.

  3. #3
    Membre confirmé Avatar de papyphp
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    438
    Détails du profil
    Informations personnelles :
    Âge : 73
    Localisation : Belgique

    Informations professionnelles :
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2005
    Messages : 438
    Points : 587
    Points
    587
    Par défaut
    Bonjour et merci pour ta réponse,

    Problème résolu. C'est grâce à ta réponse le session_start se met "de préférence" en première ligne.
    Et ça devient impératif si on fait des include de fichiers.

    L'âge fait perdre de la concentration.

    Le dialecte est du wallon (de moins en moins utilisé par les Belges) c'est en général très savoureux et ça diffère assez bien d'un endroit à un autre.
    Traduction : Le 15 du mois d'août la Vierge arrange ou détruit le temps

    A bientôt.
    Lu kinze d' awousse, la Vierje arandje û dusbrôle lu timp.

  4. #4
    Invité
    Invité(e)
    Par défaut
    Re.

    ASTUCE : quand un fichier (inclus ou autre) se termine par une instruction php :
    => on peut omettre la balise de fermeture ?>.

    Intérêt ?
    Si on a des lignes vides après, elles ne sont pas considérées comme du "HTML".
    Ca évite un grand nombre d'erreurs du type "header already sent.....".

    ex. au lieu de :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <?php
    // ici du code PHP en toute fin de fichier
    ?>
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <?php
    // ici du code PHP en toute fin de fichier

    N.B. Merci pour la traduction... une fois

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

Discussions similaires

  1. header('Location:$url') VS session_start()
    Par Paniez dans le forum Langage
    Réponses: 2
    Dernier message: 02/12/2005, 23h30
  2. [Sécurité] utilisation de session_start()
    Par ibtisss dans le forum Langage
    Réponses: 3
    Dernier message: 23/09/2005, 19h40
  3. Réponses: 2
    Dernier message: 05/07/2005, 18h12
  4. Propagation d'un motif sur une texture . ?
    Par Clad3 dans le forum OpenGL
    Réponses: 8
    Dernier message: 03/06/2005, 17h53
  5. Propager un querystring
    Par Giill dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 04/01/2005, 15h54

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