Partage
  • Partager sur Facebook
  • Partager sur Twitter

Poster une image en bbcode

Ou le problème du <a href=""> automatique avec les liens

Sujet résolu
    6 août 2017 à 18:06:09

    Bonjour !

    J'ai suivi à la lettre ce super tuto pour le bbcode. Je m'amusais à rajouter d'autres boutons dans le formulaire de post : un pour barrer le texte, un pour centrer, etc. Tout marche impec. Et là c'est le drame quand je m'attaque au bouton pour insérer une image.

    A priori c'est très simple. Il suffit de mettre ce code dans le formulaire de post :

    <input type="button" id="image" name="image" value="Image" onClick="javascript:bbcode('[img]', '[/img]');return(false)" />

    Puis cette ligne dans mon fichier bbcode.php qui contient le function code($texte) :

    $texte = preg_replace('`\[img\](.+)\[/img\]`isU', '<img src="$1" alt="">', $texte);

    Voilà, plus qu'à faire un echo avec "code(nl2br(stripslashes(htmlentities($data['post_texte']))))" pour afficher le post sur le topic par exemple.

    Le problème, c'est que lorsque je mets l'url d'une image ou autre à la place de $1, ça me met automatiquement une balise <a href="$1"> à la place. Ce qui gâche tout le code. Voici le résultat en image sur Chrome avec l'inspecteur ouvert :

    Voilà voilà, je désespère et j'aimerais bien avoir votre aide svp :c

    EDIT :

    Plutôt que de suppr le topic, je préfère donner la réponse en double-post, au cas où certains rencontrent le même problème en suivant un peu trop à la lettre le tuto que j'ai link.

    Dans le fichier bbcode.php qui contient le function code($texte), il faut enlever cette ligne :

    //lien
    $texte = preg_replace('#http://[a-z0-9._/-]+#i', '<a href="$0">$0</a>', $texte);
    J'suis dégoûté d'avoir passé autant d'heures sur un truc aussi débile.

    -
    Edité par RuineManiac 6 août 2017 à 19:32:25

    • Partager sur Facebook
    • Partager sur Twitter

    Poster une image en bbcode

    × 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