Partage
  • Partager sur Facebook
  • Partager sur Twitter

Problème preg_replace...

...tout devrai marcher pourtant !

Sujet résolu
    27 février 2006 à 20:35:34

    Salut à tous. Je sais que le sujet à été traaité plein de fois, mais sur les recherches, pas beaucoup de "Résolus" qui pouvaient m'aider.
    Voici mon problème :

    J'ai fais un preg_replace qui devrai marcher... j'ai utilisé str_replace pour mes smileys et ça fonctionne, mais le preg, non...

    Voici le code :

    $message = preg_replace('!\[b\](.+)\[/b\]!isU', '<span class="gras">$1</span>', $message);
    $message = preg_replace('!\[i\](.+)\[/i\]!isU', '<span class="italique">$1</span>', $message);
    $message = preg_replace('!\[u\](.+)\[/u\]!isU', '<span class="souligne">$1</span>', $message);
    $message = preg_replace('!\[s\](.+)\[/s\]!isU', '<span class="barre">$1</span>', $message);
    $message = preg_replace('!\[img\](http://(www\.)?[a-z0-9_.-]\.
    [a-z0-9_.-]/[a-z0-9_./-]\.[a-z]{2,4})\[/img\]!isU'
    , '<img src="$1" title="" class="samline" />', $message);
    $message = preg_replace('!\[color=(red|green|blue|yellow|purple|olive)\](.+)\[/color\]!isU', '<font color="$1">$2</span>', $message);
    $message = preg_replace('!\[size=(8|10|12|14|16|18)\](.+)\[/size\]!isU', '<font size="$1">$2</span>', $message);
    $message = preg_replace('!http://[a-z0-9._/-]+!i', '<a href="$0">$0</a>', $message);
    $message = preg_replace('!\[url=([a-zA-Z0-9./_-]+)\](.+)\[/url\]!isU','<a href="$1">$2</a>',$message);
    $message = preg_replace('!^[a-z0-9._-]+@[a-z0-9._-]{2,}\.[a-z]{2,4}$!', '<a href="mailto: $0">$0</a>', $message);
    $message = preg_replace('!\[mail=([a-z0-9._-]+@[a-z0-9._-]{2,}\.[a-z]{2,4}$!isU','<a href="mailto: $1">$2</a>',$message);
    $pseudo = htmlentities($_POST['pseudo'], ENT_QUOTES); // On utilise htmlentities par mesure de sécurité
    $pseudo = ucfirst($_POST['pseudo']); // La première lettre du pseudo sera en majuscule
    $message = ucfirst($_POST['message']); // La première lettre du message sera en majuscule
    $message = htmlentities($_POST['message'], ENT_QUOTES); // On utilise htmlentities par mesure de sécurité
    $message = nl2br($message);
    $message = smileys($message);
    $message = stripslashes($_POST['message']);


    Merci d'avance !
    • Partager sur Facebook
    • Partager sur Twitter
      27 février 2006 à 21:01:52

      Faut voir ce que tu entends par, ne marche pas, mais bon ,tu fais un htmlentities apres avoir mis tes balises, donc y'a déjà bcp de chance que ça ne tourne pas très rond, commence par le htmlenties ^^
      • Partager sur Facebook
      • Partager sur Twitter
        27 février 2006 à 21:14:53

        Ca marche pas, ça ne remplace pas les balises quoi ^^
        Et là je test ton truc, merci !
        EDIT : Eum ça remplace (je crois), mais ça affiche rien du tout o_O
        • Partager sur Facebook
        • Partager sur Twitter

        Problème preg_replace...

        × 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