Partage
  • Partager sur Facebook
  • Partager sur Twitter

problème de code

Sujet résolu
    13 mai 2006 à 11:48:07

    Bonjour,

    <?php
            mysql_connect("localhost", "root", "");
    mysql_select_db("site");

            $liste = mysql_query("SELECT * FROM fiches WHERE categorie='livre' ORDER BY titre");

            while ($fiche2 = mysql_fetch_array($liste) )
                    {
                    <li><a href="http://fantasmagoria.new.fr/index.php?tete=".$tete."&amp;corps=2&amp;id=<?php echo $fiche2['id']; ?>"><?php echo $fiche2['titre']; ?></a></li>
                    <?php
                    }
                    mysql_close();
                    ?>


    mon cher easy php me dis qu'il y a une bug sur la ligne

    <li><a href="http://fantasmagoria.new.fr/index.php?tete=".$tete."&amp;corps=2&amp;id=<?php echo $fiche2['id']; ?>"><?php echo $fiche2['titre']; ?></a></li>


    le message est Parse error

    je trouve pas^^, help please

    merci d'avance
    • Partager sur Facebook
    • Partager sur Twitter
      13 mai 2006 à 11:49:34

      y a pas d'echo dans ton while ?
      Par contre, la balise <?php à quoi elle sert ?
      • Partager sur Facebook
      • Partager sur Twitter
        13 mai 2006 à 11:51:01

        <?php
                mysql_connect("localhost", "root", "");
        mysql_select_db("site");

                $liste = mysql_query("SELECT * FROM fiches WHERE categorie='livre' ORDER BY titre");

                while ($fiche2 = mysql_fetch_array($liste) )
                        {
        ?>
                        <li><a href="http://fantasmagoria.new.fr/index.php?tete=".$tete."&amp;corps=2&amp;id=<?php echo $fiche2['id']; ?>"><?php echo $fiche2['titre']; ?></a></li>
                        <?php
                        }
                        mysql_close();
                        ?>


        Je pense que tu as oublié un ?> après while ($fiche2 = mysql_fetch_array($liste) ) { :)
        • Partager sur Facebook
        • Partager sur Twitter
          13 mai 2006 à 11:52:01

          Alala, je crois que tu n'a pas tout compris...

          <?php
          mysql_connect("localhost", "root", "");
          mysql_select_db("site");

          $liste = mysql_query("SELECT * FROM fiches WHERE categorie='livre' ORDER BY titre");

          while ($fiche2 = mysql_fetch_array($liste) )
          {
                  echo '<li><a href="http://fantasmagoria.new.fr/index.php?tete="'.$tete.'"&amp;corps=2&amp;id='.$fiche2['id'].'">
                          '
          .$fiche2['titre'].'</a></li>';
          }

          mysql_close();
          ?>


          Essaie de ne pas tout le temps ouvrir et fermer les <? et ?>
          • Partager sur Facebook
          • Partager sur Twitter
            13 mai 2006 à 11:53:39

            Rien n'oblige à faire un echo... On peut très bien faire comme ça:

            <?php
            le code php
            while(...) {
            ?>
            du code xhtml
            <?php
            }
            encore du code php
            ?>
            • Partager sur Facebook
            • Partager sur Twitter
              13 mai 2006 à 11:55:12

              Oui, mais c'est une baisse de performance et ça rend le code php beaucoup plus illisible...
              • Partager sur Facebook
              • Partager sur Twitter
                13 mai 2006 à 11:56:49

                Ca peut éviter d'avoir à mettre des \ devant les " ou les ' (suivant si on fait echo ' ou echo "). Bref les deux solutions sont possibles
                • Partager sur Facebook
                • Partager sur Twitter
                  13 mai 2006 à 11:57:32

                  Citation : Mister Titou

                  Rien n'oblige à faire un echo... On peut très bien faire comme ça:

                  <?php
                  le code php
                  while(...) {
                  ?>
                  du code xhtml
                  <?php
                  }
                  encore du code php
                  ?>


                  Bien sûr qu'on peut le faire !
                  Personne n'a dit le contraire.

                  Par contre, dans le cas ci-dessus, c'est complètement stupide de le faire.
                  A quoi ça sert de sortir et revenir à php à chaque tour de boucle ???? :-°
                  • Partager sur Facebook
                  • Partager sur Twitter
                    13 mai 2006 à 12:00:15

                    En effet ici c'est pas forcémment utile...
                    • Partager sur Facebook
                    • Partager sur Twitter
                      13 mai 2006 à 12:03:16

                      Citation : Mister Titou

                      Ca peut éviter d'avoir à mettre des \ devant les " ou les ' (suivant si on fait echo ' ou echo "). Bref les deux solutions sont possibles



                      Personnelement, je préfère prendre l'habitude de mettre des anti-slashs plutôt que des <? ?>, tu trouves pas que tu gagnes en vitesse (et aussi en visibilité de nouveau ;) )
                      • Partager sur Facebook
                      • Partager sur Twitter
                        13 mai 2006 à 12:10:53

                        Pour ma part je préfère faire, si le code xhtml est long (bien sûr pour deux lignes):
                        ?>
                        mon code xhtml
                        <?php
                        Mais après c'est personnel, chacun ses habitudes.
                        • Partager sur Facebook
                        • Partager sur Twitter
                          13 mai 2006 à 12:14:28

                          Et la cohérence dans son code on en fait quoi hein ?
                          Qu'est ce qui est plus propre ?
                          ça :
                          echo "<input type=\"text\" name=\"nom\" value=\"votre nom\" class=\"formulaire\" />";

                          ou ça :
                          echo '<input type="text" name="nom" value="votre nom" class="formulaire" />';


                          echo 'truc'; est toujours plus rapide que echo "truc" simplement parce que PHP saura d'entrée que la chaine ne peut contenir aucune variable.

                          • Partager sur Facebook
                          • Partager sur Twitter
                            13 mai 2006 à 14:22:20

                            C'est pas un problème de vitesse à mes yeux la séparation en php et html,vu que la différence est de quelques illièmes seulement,mais c'est plutot que je trouve ça plus lisible en séparant les codes, surtout quand on fais les codes à plusieurs.

                            merci,mon problème est résolu ^^
                            • Partager sur Facebook
                            • Partager sur Twitter

                            problème de code

                            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                            • Editeur
                            • Markdown