Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Automatyczne linki?
Forum PHP.pl > Forum > Przedszkole
sannjas
Witam!

Mam takie pytanie. Robię właśnie stronę i zastanawiam się czy mozna użyć jakiegoś skryptu aby np pod każde słowo "puszka" w tresci strony automatycznie podciągał się link? A jak mi się "puszka" znudzi to szybko i łatwo pod słowa "albo" umieścić inny link?

Takie autolinki - jak sie cos w treści pojawia to jest automatycznie linkowane do wskazanego obiektu?

Spotkałem się z tym w cms PostNuke i jemu podobnych ale to jest cały system - czy da sie to zrobić prościej np doklejając na początku strony jakiś kodzik?

Prosze o pomoc

Pozdrawiam
Maciej
Lars
Wystarczy str_replace" title="Zobacz w manualu PHP" target="_manual i buforowanie
  1. <?php
  2. ?>
  3. tutaj kod strony
  4. <?php
  5. $x=str_replace('puszek', '<a href="http://www.kicia.pl/">puszek</a>', $x);
  6. echo $x;
  7. ?>


Pozdrawiam,
Lars
marcio
  1. <?php
  2. function bbcode_autolink($str) {
  3.  
  4. $lnk=$str[0];
  5. if(strlen($lnk)>30) {
  6. if(substr($lnk,0,6)=='http://' || substr($lnk, 0, 2) == 'www') {
  7. echo('ok');
  8. $l = 15;
  9. }
  10. else {
  11. $l=15;
  12. }
  13. $lnk=substr($lnk,0,$l).'(...)'.substr($lnk,strlen($lnk)-8);
  14. }
  15. return ' <a href="'.$str[0].'" target="_blank">'.$lnk.'</a>';
  16. }
  17. ?>

Nie jest udoskonalone bo czasami cos sie walilo wystarczy poprawic
I bbcode:
Kod
$zmien = preg_replace_callback("#(http[s]?://|ftp://|www.)([a-z0-9\-\.,\?!%\*_\#:;~\\&$@\/=\+]+)#si", "bbcode_autolink", $zmien);
$zmien = preg_replace_callback("#(http[s]?://|ftp://|www.)([^ ]+)#", "bbcode_autolink", $zmien);

Ktorys z powyzszych.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.