creation automatique de liens dans une page html

creation automatique de liens dans une page html - HTML/CSS - Programmation

Marsh Posté le 21-09-2010 à 21:31:42    

Bonjour,
J’ai un site sur des marques de fabriquant, pour le moment je possède une page sommaire pour naviguer.
Si dans une page on parle d'une autre marque, on doit revenir au sommaire pour voir la nouvelle page.
J'aimerais avoir des liens vers les autres marques quand elles sont inscrites dans une page,  
ceci sans reprendre tout mon code html de chaque page et rajouter href...etc...
A la manière des pages de Wikipedia, où on a des liens sur de nouvelles pages à partir de mots clés.  
Ainsi si je rajoute une nouvelle page, les marques déjà dans le sommaire auraient des liens prédéfinis.
Y-a-t'il quelque chose de simple en JavaScript ou PHP ? (je n’ai pas MySQL)
Merci d avance.

Reply

Marsh Posté le 21-09-2010 à 21:31:42   

Reply

Marsh Posté le 03-10-2010 à 09:17:50    

Bonjour,
Oui, si j'ai bien compris tu veux un menu statique à toute les pages.
Si je dis une bêtise tu m'arrête :)
 
Donc le plus simple est d'utiliser une frame "fille" (menu) et de la faire correspondre à la page "mère".
Et de la page mère ré-actualiser le contenu de la 2nd frame (marque).
ICI des tutos que j'ai vite fait pris sur google : (A toi de choisir)
http://forum.rue-montgallet.com/ru [...] 2267_1.htm
http://forum.alsacreations.com/top [...] frame.html
http://www.developpez.net/forums/d [...] ame-frame/
http://www.javascriptfr.com/forum/ [...] 21997.aspx
 
@++


Message édité par cetplus le 03-10-2010 à 09:21:26
Reply

Marsh Posté le 04-10-2010 à 14:23:52    

J'ai pas trop compris le coup de revenir sur le sommaire pour aller sur la page de la marque : pourquoi ne pas y aller directement :??:
 
Mais ce que tu demandes se fait très bien. 2 solutions :
- soit direct à l'affichage de la page html si son contenu est généré par du php
- soit à la volée, une fois que la page html est affichée, auquel cas, ça va se faire soit par du javascript seul, soit via du Ajax (javascript + PHP), tout dépend d'où tu tires l'association entre les mots-clés (marques) et leur url associée.
 
Dans mon appli Astres (cf ma signature), j'ai mis en place un tel système (solution 2) : mettre des liens hypertextes sur des mots d'une description d'un ticket client à chaque fois que je trouvais une correspondance dans plusieurs bases de données (articles d'un wiki, noms de machines/imprimantes ou IP dans GLPI, références de documents dans une GED...). J'ai d'ailleurs ouvert un topic là-dessus : http://forum.hardware.fr/forum2.ph [...] w=0&nojs=0
Mon problème était que je ne me limitais pas à une correspondance sur 1 mot mais sur des groupes de mots allant de 1 à 4.


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
Reply

Marsh Posté le 05-10-2010 à 09:35:12    

J'y pense aussi arrakis75
J'ai un autre système, type google :

Code :
  1. <html>
  2. <title>! Rechercher !</title>
  3. <script language=JavaScript>
  4. <!--
  5. function redirec() {
  6. var msg = this.document.forms[0].elements["text1"].value + ".html";
  7. this.document.location = msg;
  8. }
  9. function find() {
  10. var s=this.document.forms[0].elements["text1"].value;
  11. var s=s.toLowerCase();
  12. if (s == "" ) {
  13. document.getElementById('test1').innerHTML = "";
  14. exit;
  15. }
  16. if (s.indexOf("mo" )>=0) {
  17. document.getElementById('test1').innerHTML = "mobile";
  18. exit;
  19. }
  20. if (s.indexOf("ma" )>=0) {
  21. document.getElementById('test1').innerHTML = "mac";
  22. exit;
  23. }
  24. if (s.indexOf("l" )>=0) {
  25. document.getElementById('test1').innerHTML = "linux";
  26. exit;
  27. }
  28. if (s.indexOf("w" )>=0) {
  29. document.getElementById('test1').innerHTML = "window";
  30. exit;
  31. }
  32. if (s.indexOf("m" )>=0) {
  33. document.getElementById('test1').innerHTML = "mac";
  34. document.getElementById('test1').innerHTML += "<br>mobile";
  35. exit;
  36. }
  37. if (s.indexOf("s" )>=0) {
  38. document.getElementById('test1').innerHTML = "siteduzero";
  39. exit;
  40. }
  41. }
  42. //-->
  43. </script>
  44. <body bgcolor="orange">
  45. <form>
  46. <p><input type="text" value="" onKeydown="find();" name="text1"><input type="button" value="Rechercher" onClick="redirec();">
  47. <br><span id="test1"></span>
  48. </form>
  49. </body></html>


 
Principe de google !
Fait maison : cetplus :)
 
Donc tu peux taper l / w / m / s et il te donne les liens possibles.
Quand tu cliques sur Rechercher (ou consulter ^^) ça redirige vers une adresse x+html.
:) bonne chance ! Sinon Rufo je ne comprend pas trop là.

Reply

Marsh Posté le 05-10-2010 à 10:10:07    

cetplus a écrit :

J'y pense aussi arrakis75
J'ai un autre système, type google :

Code :
  1. <html>
  2. <title>! Rechercher !</title>
  3. <script language=JavaScript>
  4. <!--
  5. function redirec() {
  6. var msg = this.document.forms[0].elements["text1"].value + ".html";
  7. this.document.location = msg;
  8. }
  9. function find() {
  10. var s=this.document.forms[0].elements["text1"].value;
  11. var s=s.toLowerCase();
  12. if (s == "" ) {
  13. document.getElementById('test1').innerHTML = "";
  14. exit;
  15. }
  16. if (s.indexOf("mo" )>=0) {
  17. document.getElementById('test1').innerHTML = "mobile";
  18. exit;
  19. }
  20. if (s.indexOf("ma" )>=0) {
  21. document.getElementById('test1').innerHTML = "mac";
  22. exit;
  23. }
  24. if (s.indexOf("l" )>=0) {
  25. document.getElementById('test1').innerHTML = "linux";
  26. exit;
  27. }
  28. if (s.indexOf("w" )>=0) {
  29. document.getElementById('test1').innerHTML = "window";
  30. exit;
  31. }
  32. if (s.indexOf("m" )>=0) {
  33. document.getElementById('test1').innerHTML = "mac";
  34. document.getElementById('test1').innerHTML += "<br>mobile";
  35. exit;
  36. }
  37. if (s.indexOf("s" )>=0) {
  38. document.getElementById('test1').innerHTML = "siteduzero";
  39. exit;
  40. }
  41. }
  42. //-->
  43. </script>
  44. <body bgcolor="orange">
  45. <form>
  46. <p><input type="text" value="" onKeydown="find();" name="text1"><input type="button" value="Rechercher" onClick="redirec();">
  47. <br><span id="test1"></span>
  48. </form>
  49. </body></html>


 
Principe de google !
Fait maison : cetplus :)
 
Donc tu peux taper l / w / m / s et il te donne les liens possibles.
Quand tu cliques sur Rechercher (ou consulter ^^) ça redirige vers une adresse x+html.
:) bonne chance ! Sinon Rufo je ne comprend pas trop là.


 
Si je ne fais pas erreur, son pb n'est pas d'obtenir des liens quand il tape un mot-clé dans un input type text mais d'enrichir un texte "statique" en html avec des liens correspondant à dans mots-clés trouvés dans ce texte. Donc ta solution ne convient pas. ou alors, j'ai vraiment rien compris au pb de l'auteur de ce topic (qu'a pas l'air d'être super intéressé par les réponses qu'on lui donne du reste :/ )...


Message édité par rufo le 05-10-2010 à 10:10:46

---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
Reply

Marsh Posté le 05-10-2010 à 10:21:01    

J'adore : (qu'a pas l'air d'être super intéressé par les réponses qu'on lui donne du reste :/ )
Sinon, d'après toi son problème c'est :
Lancer une page par rapport au mots clef insérer dans le texte.
@++


Message édité par cetplus le 05-10-2010 à 10:23:17
Reply

Marsh Posté le 05-10-2010 à 10:49:33    

arrakis75 a écrit :

Bonjour,
[...]
A la manière des pages de Wikipedia, où on a des liens sur de nouvelles pages à partir de mots clés.  
Ainsi si je rajoute une nouvelle page, les marques déjà dans le sommaire auraient des liens prédéfinis.
[...]


 
Moi, je comprends qu'il veux avoir des liens dans les textes présents sur les pages de son site comme sur Wikipedia (sans doute pour faciliter la navigation) mais, à la différence de Wikipedia, que les liens soient ajoutés automatiquement sur les mots-clés (ici, des marques) contenus dans les textes. (sur wikipedia, les liens sont mis manuellement).


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
Reply

Marsh Posté le 05-10-2010 à 21:02:59    

L'algorithme ressemble un peux à ça :
-Scan le dossier
-Sous-tires les adresses x+html
-Prend toutes les données entre un <div></div>
-Remplace les valeurs x par les adresses x+html
-document.write( les nouvelles valeurs )
 
C'est ça, non ?

Reply

Marsh Posté le 06-10-2010 à 09:03:13    

Ok, j'ai fais le programme.
Ça m'a pris un peux de temps !
http://membres.multimania.fr/yarflam/AJAX/dolink.html
 
Si des gens en ont besoins c'est le moment :)
Par contre je n'ai pas pu scanner le dossier, ça ne fonctionne pas avec Firefox (sécurité :()


Message édité par cetplus le 06-10-2010 à 09:07:16
Reply

Marsh Posté le 11-10-2010 à 10:00:16    

Et vous en pensez quoi ?

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed