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 :

Affichage d'une variable pas encore calculé


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Inscrit en
    Juin 2010
    Messages
    40
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 40
    Points : 22
    Points
    22
    Par défaut Affichage d'une variable pas encore calculé
    Bonjour à tous,

    Est il possible d'afficher la valeur d'une variable qui est calculé plus loin ?
    Je simplifie énormément en vous montrant l'exemple suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <?php
    echo $a;
    ....
    $a=1;
    En gros je calcule ma variable à la fin de mon script et je voudrais l'afficher au début de ma page. Est ce possible ?

    Merci d'avance.

  2. #2
    Membre actif Avatar de Général03
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    848
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Avril 2006
    Messages : 848
    Points : 283
    Points
    283
    Par défaut
    Cela parait absurde d'affiche une variable avant qu'elle soit définie !! Initialise là avant avec se que tu souhaites
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $a = null ;
    ...
    echo $a
    Mes contributions phares en dev : www.rigaudie.fr

  3. #3
    Expert éminent
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Points : 7 762
    Points
    7 762
    Par défaut
    Non, il n'est pas possible d'afficher le contenu d'une variable avant sa déclaration. Au mieux ça lancera un E_WARNING.

    Pourquoi cette question sans indiscrétion ?

  4. #4
    Membre à l'essai
    Inscrit en
    Juin 2010
    Messages
    40
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 40
    Points : 22
    Points
    22
    Par défaut
    Plus précisément, dans mon script, j'ai des requêtes sql qui dépendent à chaque fois du résultat précédent et qui débouchent sur des formulaires où je mets à jour des valeurs. Du coup le dernier calcul issu de ma dernière requête débouche sur un résultat important et j'aurai voulu l'afficher au top de ma page.

    Mon topic est plus dû à une réflexion et surtout à de la curiosité (à savoir s'il existe un moyen simple d'aller chercher un résultat plus loin dans un code pour l'afficher en haut).

    Car j'ai déjà une solution (moins pratique) en modifiant mon script il suffit que je fasse tous les calculs en premier et ensuite tous les affichages...

    EDIT : en tout cas merci de ta réponse, cela confirme ce que je pensais (que ce n'est pas possible)

  5. #5
    Membre averti Avatar de sayari.dev
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2010
    Messages
    142
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2010
    Messages : 142
    Points : 300
    Points
    300
    Par défaut
    Bonjour,

    Je pense que tu peux faire tous tes calculs avant de commencer le rendu de ta page.

    Sinon, tu peux afficher la valeur d'une variable calculée à la fin du script en début de la page en passant par le javascript : ).

    Exemple

    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
    <body>
    <div id="value-output"></div>
    .....
    <!-- Du html -->
    .....
    <?php
    //du code php
    ?>
    .....
    .....
    .....
    <?php $a = 'blabla' ?>
    <script type="text/javascript">
    document.getElementById('value-output').innerHTML = '<?php echo $a ?>';
    </script>
    .....
    </body>
    Voilà ; )
    C'est en faisant n'importe quoi qu'on devient n'importe qui

  6. #6
    Membre à l'essai
    Inscrit en
    Juin 2010
    Messages
    40
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 40
    Points : 22
    Points
    22
    Par défaut
    Merci pour ta réponse.
    Ça fonctionne effectivement.

  7. #7
    Expert éminent
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Points : 7 762
    Points
    7 762
    Par défaut
    Ce genre de pratique relève du bidouillage et ne devrait jamais se retrouver en production.

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

Discussions similaires

  1. Réponses: 11
    Dernier message: 16/10/2006, 14h05
  2. Réponses: 1
    Dernier message: 29/07/2006, 10h08
  3. Réponses: 10
    Dernier message: 12/07/2006, 11h42
  4. [Dates] Affichage d'une variable
    Par claudesou dans le forum Langage
    Réponses: 3
    Dernier message: 29/05/2006, 10h08
  5. Réponses: 4
    Dernier message: 14/12/2005, 08h33

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