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

  FORUM HardWare.fr
  Programmation
  PHP

  Comment on fait des liens [url: ????

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Comment on fait des liens [url: ????

n°270149
thekeke
La vie est belle !
Posté le 16-12-2002 à 03:15:07  profilanswer
 

J'ai parfois de longs liens à mettre sur mes sites alors je voudrais faire un système comme sur le forum
 

Code :
  1. [url:ici mon url]nom du site[/url]


 
mais comment ca marche ??? comment dire de "décoder" ca ?


---------------
BattleTag : thekeke#2108 ajoutez moi ;)
mood
Publicité
Posté le 16-12-2002 à 03:15:07  profilanswer
 

n°270150
thekeke
La vie est belle !
Posté le 16-12-2002 à 03:29:47  profilanswer
 

bon j ai trouvé c'est du bbcode mais dès que je fais une recherche la dessus sur google pour savoir comment l utiliser je me tape les pages qui explique aux utilisateurs comment l'écrire... et pas comment l'installer sur un site :(


---------------
BattleTag : thekeke#2108 ajoutez moi ;)
n°270253
beleg
黑社會
Posté le 16-12-2002 à 11:30:51  profilanswer
 

si cest toi qui gere le contenu de ton site .. fais directement un lien html <a href="www.....">texte</a>
 
sinon, il faut que les textes de ton site passe par une fnction qui remplace les [ url...] par le code html avant affichage

n°270282
goueg
De passage
Posté le 16-12-2002 à 11:44:29  profilanswer
 

beleg a écrit :

si cest toi qui gere le contenu de ton site .. fais directement un lien html <a href="www.....">texte</a>
 
sinon, il faut que les textes de ton site passe par une fnction qui remplace les [ url...] par le code html avant affichage

bah oui pourquoi utiliser du bbcode plutot que la balise <a> :??:
 
edit: sinon ca doit se faire avec les expressions regulieres ca


Message édité par goueg le 16-12-2002 à 11:53:34

---------------
(Feed-Back HFR) - Funky Tonight!
n°270347
omega2
Posté le 16-12-2002 à 12:40:17  profilanswer
 

Goueg a écrit :

bah oui pourquoi utiliser du bbcode plutot que la balise <a> :??:
 
edit: sinon ca doit se faire avec les expressions regulieres ca

Pour éviter de ce taper de grosses fonction de désactivations des programmes javascript, des balises dangeureuses (redirection et autre), pour éviter les merdes de mise en page par ce que des utilisateurs vont avoir oublier de fermer une balise ou vont avoir fermé des balises qu'ils ont pas ouvert ...
 
Pour les expression régulière, j'utilises :
 
"/\".$code_deb.\"(.*)\".$code_milieu.\"(.*)\".$code_fin.\"/U\"
comme chaine de recherche générique et
$html_deb."\\1".$html_milieu."\\2".$html_fin
ou
$html_deb."\\1\\2".$html_milieu."\\1\\2".$html_fin
comme chaines de remplacement.
 
La première chaine de remplacement, c'est la chaine de remplacement générique normale, la seconde, c'est pour les URL, adresses email et autre remplacement équivalent à :
[url]http://monsite.com[url]
avec comme chaine d'arrivé à obtenir une chaine du genre :
<A href="http://monsite.com">http://monsite.com</A>
 
PS : J'utilises une base de donnée pour faire ça alors j'ai juste transposé la chaine du concact de mysql en son équivalent php. J'ai donc peut être fait une erreur dans ma traduction ce qui se traduira par un \ en trop ou un \ manquant.
 
EDIT : J'utilises preg_replace, ces chaines sont donc des expression régulières de type perl.


Message édité par omega2 le 16-12-2002 à 12:41:49
n°270368
goueg
De passage
Posté le 16-12-2002 à 12:55:27  profilanswer
 

ah mais j'avais pas vu que CT pour un forum :crazy:  


---------------
(Feed-Back HFR) - Funky Tonight!
n°270434
Hermes le ​Messager
Breton Quiétiste
Posté le 16-12-2002 à 14:17:00  profilanswer
 

Justement, je suis en train de le faire moi-même. J'ai opté pour cette solution :
 
(url)htp://www.adresse.com(comment)blabla(/url)
 
ce qui fait que :
 
(url) = <a href="
(comment) = ">
et (/url) = </a>
 
PS : remplacer les ()par des [].


Message édité par Hermes le Messager le 16-12-2002 à 14:17:45
n°270454
omega2
Posté le 16-12-2002 à 14:42:40  profilanswer
 

Hermes le Messager a écrit :

Justement, je suis en train de le faire moi-même. J'ai opté pour cette solution :
 
(url)htp://www.adresse.com(comment)blabla(/url)
 
ce qui fait que :
 
(url) = <a href="
(comment) = ">
et (/url) = </a>
 
PS : remplacer les ()par des [].


Avec mon système :

Code :
  1. "/\".$code_deb.\"(.*)\".$code_milieu.\"(.*)\".$code_fin.\"/U\"
  2. à remplacer par :
  3. $html_deb."\\1".$html_milieu."\\2".$html_fin


qui donne dans ton cas
 

Code :
  1. "/\(url\)(.*)\(comment\)(.*)\(/url\)"


 
à remplacer par  
 

Code :
  1. "<a href=\"\\1\">\\2</a>"


 
ce qui fait qu'on obtient
 

Code :
  1. <a href="htp://www.adresse.com">blabla</a>


 
 
Tu peux essayer, j'utilises moi aussi des codes en trois parties alors je peux t'assurer que ca marche. Je peux pas te montrer d'exemple sur mon site vu que j'ai pas encore activer ce système (j'ai pas finis de remplir les smilies que j'utilisais avec l'ancien système)
 
EDIT : PS : Il faut remplacer les \( par \[ et les \) par \] pour tomber sur la transformation de l'ubbcode. ;)


Message édité par omega2 le 16-12-2002 à 14:46:25
n°270511
Hermes le ​Messager
Breton Quiétiste
Posté le 16-12-2002 à 15:36:37  profilanswer
 

Ce n'est pas moi qui ai un problème  :lol:  Je lui indiquais comment j'avais fait ;)
 

n°270520
omega2
Posté le 16-12-2002 à 15:45:34  profilanswer
 

Hermes le Messager a écrit :

Ce n'est pas moi qui ai un problème  :lol:  Je lui indiquais comment j'avais fait ;)
 
 

ok, ben on va dire que du coup, je lui ai expliquer ma méthode à l'aide d'un exemple. ;)

mood
Publicité
Posté le 16-12-2002 à 15:45:34  profilanswer
 

n°270932
goueg
De passage
Posté le 16-12-2002 à 19:37:33  profilanswer
 

Hermes le Messager a écrit :


 
(url)htp://www.adresse.com(comment)blabla(/url)
 
PS : remplacer les ()par des [].

les utilisateurs doivent taper un truc comme ca :??:


---------------
(Feed-Back HFR) - Funky Tonight!
n°270990
Hermes le ​Messager
Breton Quiétiste
Posté le 16-12-2002 à 21:57:46  profilanswer
 

Goueg a écrit :

les utilisateurs doivent taper un truc comme ca :??:


 
Non, suffit d'ouvrir un chti popup (c'est mal mais bon, pour une fois que ça sert à quelque chose...  :D ) et de là, tu crées deux champs à remplir avec un bouton submit. Quand le mec va cliquer dessus, ça va créer le code tout seul et le foutre dans le textarea de la page du forum.
 
(C'est une possibilité, mais il y en a d'autres...)

n°271032
panchopa
le lama de Lima
Posté le 16-12-2002 à 22:48:09  profilanswer
 

un prompt tout simplement, ca sera + léger.
entrez votre URL ---->hop url pis cliquer sur ok ------> nouvelle invite du pronpt : "entrez le texte a figurer dans le lien" | ou bien  Annuler ---> zap le coment / ou entrage de comment puis Ok ---> comment -----> fermeture du prompt et incluageationage dans le textarea
 [:panchopa]


Message édité par panchopa le 16-12-2002 à 22:51:40
n°271067
omega2
Posté le 16-12-2002 à 23:33:36  profilanswer
 

Goueg a écrit :

les utilisateurs doivent taper un truc comme ca :??:

Ils peuvent taper ça.
Ou bien comme sur ce site, tu clique sur un bouton, tu met ton texte, tu relique sur le bouton et le tour est jouer. ;) (cliquer trois fois si l'ensemble de balise est diviser en trois parties)

n°271096
goueg
De passage
Posté le 17-12-2002 à 01:10:25  profilanswer
 

omega2 a écrit :

Ils peuvent taper ça.
Ou bien comme sur ce site, tu clique sur un bouton, tu met ton texte, tu relique sur le bouton et le tour est jouer. ;) (cliquer trois fois si l'ensemble de balise est diviser en trois parties)

ouep c encore comme ici que c le + pratique je pense


---------------
(Feed-Back HFR) - Funky Tonight!
n°271327
thekeke
La vie est belle !
Posté le 17-12-2002 à 14:08:55  profilanswer
 

Pour info j'ai pris cette fonction sur un site...
 
Je l'ai un tout petit peu changée pour qu'elle remplace mes liens par "cliquez ici" avec une balise "a href" correspondante... Je vais rajouter un argument pour mettre un nom au lien autre que "cliquez ici" et un autre pour choisir la target...
 
Si cette fonction peut en aider certains...
 
NB. : elle fait pareil pour les adresses mails mais là elle marque l'adresse au lieu de "cliquez ici"
 

Code :
  1. function add_url_and_email($tmp_url="" ) {
  2.         preg_match_all("/http:\/\/([_a-zA-Z0-9-.\/]+)/si", $tmp_url, $url_array);
  3.         for($i=0;$i<count($url_array[0]);$i++)
  4.         {
  5.                 if($url_done[$url_array[0][$i]]!="done" )
  6.                 {
  7.                         $tmp_url = ereg_replace( $url_array[0][$i], "<A HREF=\"".$url_array[0][$i]."\" target=\"_blank\">cliquez ici</A>", $tmp_url );
  8.                         $url_done[$url_array[0][$i]] = "done";
  9.                 }
  10.         }
  11.         preg_match_all("/[_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)/si", $tmp_url, $email_array);
  12.         for($i=0;$i<count($email_array[0]);$i++)
  13.         {
  14.                 $tmp_url = ereg_replace( $email_array[0][$i], "<A HREF=\"mailto:".$email_array[0][$i]."\">".$email_array[0][$i]."</A>", $tmp_url );
  15.         }
  16.         return $tmp_url;
  17. }


---------------
BattleTag : thekeke#2108 ajoutez moi ;)
n°271507
Hermes le ​Messager
Breton Quiétiste
Posté le 17-12-2002 à 15:33:26  profilanswer
 

C'est toujours intéressant de regarder des sources, mais personnellement je préfère TOUT faire moi-même, quite à regarder quelques sources APRES.
 
J'ai remarqué que je perds finalement moins de temps comme ça, car j'arrive à débbugger ce que je fais 1000 fois plus vite que ce que je récupère...  :D


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

  Comment on fait des liens [url: ????

 

Sujets relatifs
[CSS]Changement de couleur des liens on rollover ?help liens,frames,cadres,cells,tabl es
CSS et liens sous Netscape4problem de bouton-liens sur flash
Le js qui permet de ne pas afficher la direction des liens en basCrée des liens dans une page Excel vers un fichier
Deux couleurs de liens sur un site (menu et page centrale)[style css] plusieurs liens de différentes couleurs?
Crée des liens à partir de mots dans un texte (expressions régulières)[ASP] Aide pour gestion de liens plizzzz
Plus de sujets relatifs à : Comment on fait des liens [url: ????


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