Variable PHP

Résolu
Bonjour,

Je voudrais savoir s'il était possible d'afficher une variable avant sa valeur, exemple :

$total=0

echo ($total);

total=5;

(je précise que c'est à tite d'exemple, sinon vous me direz qu'il y a juste à mettre la valeur de départ à 5)

Comment afficher la valeur $total=5 dans l'écho, alors que cette valeur est en dernière ligne de code ? Merci d'avance ^^

--
Si tu ne fais pas d'efforts pour écrire et te relire, personne ne fera l'effort de t'aider...
Configuration: Windows Vista

13 réponses

  1. C'est impossible.
    dans ton cas, jamais tu ne pourras avoir un résultat de 5.
    Adapte ton code pour cela.
    0
    1. Salut ,
      Tu devrais savoir qu'en programmation procédurale le code est lu ligne après ligne , ce qui veux dire qu'au moment où tu veux afficher la variable $total le navigateur ne sait pas encore que tu lui as assigné la valeur 5 .
      C'est donc hélas impossible.
      0
      1. t'es sur que c'est le navigateur qui lis le php ? dans ce cas bonjour la merde, fau adapter le php à tous le navigos !!! on est mal barré ^^
        0
    2. Salut,

      Ca aurait été excellent si ça avait été possible !!

      <?php

      $mon_avenir = '';
      $prochain_tirage_du_loto : '';

      echo $prochain_tirage_du_loto.' - '.$mon_avenir;

      ?>
      0
      1. J'explique mon cas comme ça ^^

        J'ai fait une liste de jeux avec pour chaque ligne de mon array, un $total++;
        Et donc mon total était tout en bas, aucun problème ! Maintenant je me penchais sur la question de savoir si je pouvais mettre mon total tout en haut ! Sans passer par ma base de donnée (car sinon je peux faire comme ça) ! Donc je pensais à un return en fin de page ou autres... Impossible donc ? Merci pour vos réponces ^^
        0
        1. Au fait, y a pas moyen de faire remonter la requete avec un if ou autres (sauf avec un while) ? Y a pas de return value ou je sais pas ?
          0
          1. Peut être les deux remarque :

            while (?) {
            if($total==0) {

            alors il traite mes tableaux array ect,

            }else{

            echo ($total);

            remettres les tableaux sans qu'ils réapraissent deux fois !

            }

            Une idée ?
            0
            1. Je pense avoir trouvé une pseudo solution :
              <head>
              
              <script type="text/javascript">
              
              var test=0
              var stop=0
              
              function essai() {
              
              	while(stop==0) {
              		if (test==1) {
              			alert (test);
              			stop=1;
              		}else{
              		test=1;
              		}
              	}
              }
              
              </script>
              
              </head>


              Si on regarde, l'alert est avant que le resultat soit égale à 1 ^^

              Maintenant, est-ce que ca va pas être galère à mettre en place avec un array et quelques milliers de lignes...
              0
              1. Tu veux afficher $total avant ton array c'est bien ça?

                Je pense que la seule solution soit une 2ème requete. (et ce n'est pas la mort :p)
                0
                1. Je suis sous Opera et c'est juste pour moi ! Je fait ça en local, j'ai beaucoup de jeux et je me suis fait une liste où on peut trier par console, style, année ect. Donc c'est pour moi ! Pas besoin de plusieurs navigateur ^^
                  0
                  1. Bonjour, bien sur que si que c'est posible.
                    (et au fait, php5 est un langage qui peut être utilisé en procédural mais surtout orienté objet! C'est pas du php4!)

                    <?php

                    $txtpartie1="<html><head></head><body>";
                    $toto = 1;
                    $txtpartie3 = $toto.'</body><html>;
                    $toto=5;
                    $txtpartie2 = '$toto;

                    echo $txtpartie1.$txtpartie2.$txtpartie3;
                    ?>

                    Et voila, tu affiches bien 51 et non 15 (testé).

                    Après, tu peux aussi utiliser du javascript
                    <html><head></head><body><div id="partieUn"></div>
                    <?php $toto = 1;

                    echo $toto;

                    $toto = 5;
                    echo '<script type="text/javascript"> document.getElementById("partieUn").innerHTML="'.$toto.'"</script>';

                    ?>

                    </body><html>

                    testé aussi et tu affiches en première ligne 5 et en deuxième ligne 1 ! Je pense que pour toi c'est plus cette solution qui est à privilégier.
                    0
                2. Ah en effet, j'avais pas vu ça de cette manière (pourtant je l'ai déjà fait) ! Merci beaucoup Archeus ^^
                  0
                  1. Sinon, tu avais aussi la fonction count($tab)... Mais voila, je me suis enflammé sur le fait que certains disent que c'est impossible. Au final, quel solution tu as privilégié, php ou javascript?
                    0
                3. Je travaille la donc je testerais ce soir, de toute facon, c'était juste pour info car je sais même si je le ferais, c'est peut-être bien aussi tout en bas de mes listes ^^ Sinon je voulais faire un peu comme sur CçM tout tout en haut ! Ca aurait pu être sympa donc à voir ^^ Merci en tout cas, ca sera également utile pour d'autres je pense ^^
                  0