Partage
  • Partager sur Facebook
  • Partager sur Twitter

Fonction anti nl2br

Fatal error

Sujet résolu
    23 juin 2006 à 22:27:22

    Bonjour, me revoici avec un petit bug.

    Le bug:

    Citation : message d'erreur

    Fatal error: Cannot redeclare br2nl() (previously declared in /home.10/mendrock/www/aventure/config.php:36) in /home.10/mendrock/www/aventure/config.php on line 36



    Le code:
    <?
    35  // Anti nl2br()
    36  function br2nl($text)
    37  {
    38     return  preg_replace('/<br\\s*?\/??>/i', '', $text);
    39  }
    ?>


    Je ne comprend pas pourquoi il m'affiche ce message, avant je n'avais pas ce bug, et je n'ai rien modifié sur cette page.

    Quelqu'un pourrait m'aider?
    Merci d'avance

    edit: Ce que je comprend du message d'erreur c'est que la fonction est créée 2 fois... Pourtant ce n'est pas le cas.
    • Partager sur Facebook
    • Partager sur Twitter
      23 juin 2006 à 22:40:19

      Ton fichier est surement inclus deux fois. Pour résoudre ce problème, tu peux utilisers include_once() au lieu d'include() ou require_once() au lieu de require().
      • Partager sur Facebook
      • Partager sur Twitter
        23 juin 2006 à 22:55:54

        Citation : isbaticour

        <?php
        function br2nl($text)
        37  {
        38     return  preg_replace('/<br\\s*?\/??>/i', '', $text);
        39  }
        ?>

        T'as trouvé ça où ?
        Déjà je hais les pseudos fonctions "inverse_nl2br()" mais là..., dans ce cas çi..., je ne sais pas si je dois rire ou pleurer ?
        Les deux sans doute ! :-°
        • Partager sur Facebook
        • Partager sur Twitter
          24 juin 2006 à 3:24:10

          Oulà...
          Encore un str_replace() ça aurait pu allait mais là...

          nl2br s'applique à l'affichage et non à l'insertion ;)
          • Partager sur Facebook
          • Partager sur Twitter
            24 juin 2006 à 18:06:22

            Je n'ai plus le problème. J'ai rééenvoyer les fichier et maintenant, cela fonctionne.

            Pourquoi n'est-ce pas bien ?
            Existe-il déjà une fonctionne qui à cette utilitée?


            Je l'ai trouvée sur php.net/nl2br
            • Partager sur Facebook
            • Partager sur Twitter
              24 juin 2006 à 18:14:16

              Eh bien Anders Norrbring devait avoir fumé un truc pas légal :p

              function br2nl($text) {
                  return str_replace('<br />', '', $text);
              }

              ça suffit amplement :p (c'en est même ridicule ^^)
              (à la limite si tu veux que ça marche aussi pour PHP < 4.0.5 tu peux remplacer '<br />' par array('<br />', '<br>'))


              Mais comme dit précédemment, nl2br() s'utilise en général à l'affichage, donc après l'insertion, et donc une telle fonction "inverse" est en général inutile :)
              • Partager sur Facebook
              • Partager sur Twitter
                24 juin 2006 à 20:38:46

                bluestorm < on ne parle pas de suppression de <br /> en général (wi pask'il peut y avoir <BR> aussi),
                mais d'inverser les effets de la fonction nl2br()
                or nl2br() insérera avant les sauts de lignes soit <br /> soit <br> selon la version de PHP, mais jamais <br/> :)
                • Partager sur Facebook
                • Partager sur Twitter
                  24 juin 2006 à 20:42:20

                  En faite, si je n'utilise pas la fonction... Il m'affiche justement les <br /> en plus du retour à la ligne.
                  • Partager sur Facebook
                  • Partager sur Twitter
                    24 juin 2006 à 21:14:50

                    on a déja donné une réponse ici
                    • Partager sur Facebook
                    • Partager sur Twitter

                    Fonction anti nl2br

                    × 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