link herkennen en kunnen gebruiken

Praat mee over van alles en nog wat!
Forumregels
Dit forum is voor alle zinnige gesprekken buiten phpBB om. Discussies en gesprekken over interessante onderwerpen.

Een nieuw onderwerp moet..:
  • uiteraard voldoen aan de algemene voorwaarden
  • niet passen in de gewone supportfora
  • interessante zijn voor het overgrote deel van onze gebruikers
  • een neutrale of positieve ondertoon hebben
  • anders zijn dan bestaande onderwerpen
Plaats reactie
dano
Berichten: 6
Lid geworden op: 03 jul 2005, 19:37

link herkennen en kunnen gebruiken

Bericht door dano » 05 jul 2005, 10:33

Weet iemand een functie hoe ik in tekstberichten automatisch een link kan herkennen en wanneer de berichten worden weergegeven dat deze links ook gebruikt kunnen worden door erop te klikken. (ivm php gastenboekje). Dus dat als iemand intoetst http://www.nu.nl dat deze link dan ook werkend tussen de tekst verschijnt. Edit: Precies zoals hier in dit bericht

Gebruikersavatar
Stef
Berichten: 9080
Lid geworden op: 04 jun 2003, 20:47

Bericht door Stef » 05 jul 2005, 13:54

Dano; dit heeft niks met phpBB te maken.

Verder zit het toch al in het gastenboek?

Gebruikersavatar
DoubleJ
Berichten: 502
Lid geworden op: 22 jan 2005, 17:20
Locatie: Enschede
Contacteer:

Bericht door DoubleJ » 05 jul 2005, 14:43

open bbcode.php
die zit in de includes map.
ergens in dat bestand zit een functie die heet: makeclickable
die zorgt ervoor dat alles wat op een link lijkt klikbaar wordt.
DoubleJ - "Waarom makkelijk doen, als het ook moeilijk kan."

dano
Berichten: 6
Lid geworden op: 03 jul 2005, 19:37

Bericht door dano » 05 jul 2005, 16:41

FF kijken. dat begreep ik niet helemaal. Je moet me een beetje wegwijs maken. ik heb bij de downloads gekeken, maar open bbdcode.php was weg. Misschien heb je hem ergens anders verstopt?

In ieder geval:
Ik gebruik nu:

Code: Selecteer alles

$message = preg_replace('`(?<!<a href=")((http)+(s)?:(//)|(www\.))((\w|\.|\-|\_)+)(/)?(\s|$|<)`i', '<a href="http\\3://\\5\\6\\8" target="_blank">\\5\\6</a>\9', $message);
Maar deze pakt niet alles. Bijv wel http://www.daanooms.nl, maar niet http://www.daanooms.nl/index.htm

Ik heb er een nodig die alles wat op een url lijkt klikbaar maakt bijv als ik uit de adresbalk:
http://www.phpbb.nl/posting.php?mode=re ... 5562dbbb5a kopieer[/url]

Gebruikersavatar
DoubleJ
Berichten: 502
Lid geworden op: 22 jan 2005, 17:20
Locatie: Enschede
Contacteer:

Bericht door DoubleJ » 05 jul 2005, 20:58

in phpBB zit het volgende bestand:
includes/bbcode.php
deze behandelt alle bbcode functies.

Daar staat deze functie die ik net aangaf dus ook in.
DoubleJ - "Waarom makkelijk doen, als het ook moeilijk kan."

dano
Berichten: 6
Lid geworden op: 03 jul 2005, 19:37

Bericht door dano » 05 jul 2005, 22:25

Ik heb iets gevonden:

Code: Selecteer alles

$ret = eregi_replace(" ([[:alnum:]]+)://([^[:space:]]*)([[:alnum:]#?/&=])", " <a href='\\1://\\2\\3' target='_blank' target='_new'>\\1://\\2\\3</a>", $text);
$ret = eregi_replace(" (([a-z0-9_]|\\-|\\.)+@([^[:space:]]*)([[:alnum:]-]))", " <a href='mailto:\\1' target='_new'>\\1</a>", $ret);
Helaas doet deze geen url's die beginnen met http://www.enzovoort

Ik heb m'n oude maar even erachter gezet

Code: Selecteer alles

$message = preg_replace('`(?<!<a href=")((http)+(s)?:(//)|(www\.))((\w|\.|\-|\_)+)(/)?(\s|$|<)`i', '<a href="http\\3://\\5\\6\\8" target="_blank">\\5\\6</a>\9', $message);
Nu pakt die ook http://www.enzovoort

Maar in de beschrijving stond al dat de bovenstaande functie alleen gebruikt werd indien een spatie vooraf ging. Nu is dat een probleem daar bij mij vaak direct met een url wordt begonnen. Is er iemand die die voorafgaande spatie eruit weet te halen? dan werkt het voor mij!

Of weet iemand er voor te zorgen dat in de onderstaande functie ook url's worden herkent als http://www.daanooms.nl/index.htm ipv alleen http://www.daanooms.nl

Plaats reactie