Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1256 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  problème avec les la transformation de lien en BBCode

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

problème avec les la transformation de lien en BBCode

n°587160
moon06
Ignorance is bliss
Posté le 10-12-2003 à 10:30:32  profilanswer
 

Bonjour à tous :)  
 
J'utilise une fonction permettant de "BBcoder" du texte. Je m'explique :  
 
j'ai ce texte dans une news :  
 

Code :
  1. Rendez-vous sur ZoneHD


 
le problème est que pour les URL, je suis obligé de faire :
 
 

Code :
  1. $message = str_replace("[URL=","<A HREF=\"",$message);
  2. $message = str_replace("[/URL]","</B></A>",$message);
  3. $message = str_replace("]","\" target=\"_blank\"><B>",$message);


 
le problème se situe dans la troisième ligne : car ca modifie tous les ] lorsqu'ils ne sont pas dans des tags BBCode !
 
quelqu'un aurait une solution pour corriger cela ?


Message édité par moon06 le 10-12-2003 à 11:01:09

---------------
- Si les cons volaient, il ferait nuit tout le temps ! -
mood
Publicité
Posté le 10-12-2003 à 10:30:32  profilanswer
 

n°587167
karamilo
Posté le 10-12-2003 à 10:34:45  profilanswer
 

faut utiliser les regex  

Code :
  1. $message = preg_replace("#\[url=(http|https|ftp|mms)://([a-zA-Z0-9:\./_~\#=&?\.:]+)\](.*?)\[/url\]#i","<a href=\"$1\">$2</a>", $message);


J'ai peut etre oublié quelques caracteres speciaux utiles dans les url.


Message édité par karamilo le 10-12-2003 à 11:07:51
n°587170
moon06
Ignorance is bliss
Posté le 10-12-2003 à 10:38:42  profilanswer
 

ah ? merci bcp quand même !
 
quelqu'un d'autre pourrait-il fignoler ? (je vais quand même tester entre temps :))


---------------
- Si les cons volaient, il ferait nuit tout le temps ! -
n°587173
moon06
Ignorance is bliss
Posté le 10-12-2003 à 10:46:13  profilanswer
 

ça ne marche pas apparament, ca me retourne le code tel quel ! :/


---------------
- Si les cons volaient, il ferait nuit tout le temps ! -
n°587174
Profil sup​primé
Posté le 10-12-2003 à 10:47:20  answer
 

Code :
  1. $ToPreg=preg_replace('#\[url=(http|https|ftp|mms)(\:\/\/[a-zA-Z0-9_.-]+.[a-zA-Z0-9]+)\](.*?)\[/url\]#si', '<a href="$1$2" target="_blank">$3</a>', $ToPreg);

j'avais ca et ca marchait

n°587178
moon06
Ignorance is bliss
Posté le 10-12-2003 à 10:55:13  profilanswer
 

je comprends pas pk ca marche pas chez moi ... :(


---------------
- Si les cons volaient, il ferait nuit tout le temps ! -
n°587179
Profil sup​primé
Posté le 10-12-2003 à 10:56:44  answer
 

Citation :

Rendez-vous sur [URL=http://www.zonehd.net]ZoneHD[/B]

c normal le B?

n°587181
moon06
Ignorance is bliss
Posté le 10-12-2003 à 11:01:44  profilanswer
 

non ! sinon, dernière nouvelles, ca marche mais dès que j'ai des ? ou = ou & dans mon lien ca marche pas ! que manque-t-il ?

n°587187
karamilo
Posté le 10-12-2003 à 11:08:17  profilanswer
 

http://213.245.122.241/~karamilo/test.php
 

Code :
  1. $message = '  Rendez-vous sur ZoneHD';
  2. $message = preg_replace("#\[url=(http|https|ftp|mms)://([a-zA-Z0-9:\./_~\#=&?\.:]+)\](.*?)\[/url\]#i","<a href=\"$1://$2\">$3</a>", $message);
  3. echo $message;


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  problème avec les la transformation de lien en BBCode

 

Sujets relatifs
[PHP] Probleme avec DOMXMLProbleme avec Java
Probleme d'heritage et de surcharge en C#champ form et lien
fonction mail, base de données, variable, petit problème!Problème de compréhension d' une requête SQL
[PHP] Ecrire dans un fichier, probleme de formatageProbléme de refresh depuis un popup
Problème de requête SQL dans un prog. en VB[PostgreSQL] phpPgAdmin, probleme de creation de table o_O
Plus de sujets relatifs à : problème avec les la transformation de lien en BBCode


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR