![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 86 Pomógł: 0 Dołączył: 2.04.2003 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Witam!
jakis czas temu pisalem skrypt link2text i z perspektywy czasu to bylo baaardzo latwe ale teraz pisze cos w druga strone ale nie za bardzo mam pomysl na szybki algorytm... (IMG:http://forum.php.pl/style_emoticons/default/sad.gif) Problem polega na zamianie textu w postaci http://www.test.pl lub www.test.pl na aktywne linki w postaci: <a href=http://www.test.pl>www.test.pl</a> ktos ma jakis pomysl jak to zrobic w jak najkrotszym czasie?? Z gory dziekuje za odpowiedzi! POZDRAWIAM |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 81 Pomógł: 0 Dołączył: 20.03.2003 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
A ja zrobiłem przed chwilą własny skrypcik na to (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) . Tak żeby sprawdzić, czy umiem (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) .
[php:1:3408d7a0ac]<?php if(isset($HTTP_POST_VARS["tekst"])) { $tekst=$HTTP_POST_VARS["tekst"]; $tekst=nl2br($tekst); $wiersze=explode("n", $tekst); $new=""; $znak=array(".", ",", "!", "?"); $end[0]=""; for($i=0;$i<count($wiersze);$i++) { $tablica=explode(" ", $wiersze[$i]); for($j=0;$j<count($tablica);$j++) { if(substr($tablica[$j], 0, 7)=="http://") { $end[$j]=""; for($k=0;$k<count($znak);$k++) { if(substr($tablica[$j], strlen($tablica[$j])-1, 1)==$znak[$k]) { $tablica[$j]=substr($tablica[$j], 0, strlen($tablica[$j])-1); $end[$j]=$znak[$k]; } } $tablica[$j]="<a href="".$tablica[$j]."" target=_blank>".$tablica[$j]."</a>".$end[$j]; } elseif(ereg("@", $tablica[$j])==TRUE) { $end[$j]=""; for($k=0;$k<count($znak);$k++) { if(substr($tablica[$j], strlen($tablica[$j])-1, 1)==$znak[$k]) { $tablica[$j]=substr($tablica[$j], 0, strlen($tablica[$j])-1); $end[$j]=$znak[$k]; } } $tablica[$j]="<a href="mailto:".$tablica[$j]."">".$tablica[$j]."</a>".$end[$j]; } $new=$new." ".$tablica[$j]; } } echo "Tekst wpisany przez Ciebie:<br><br>$tekst<br><br>Tekst wygenerowany przez skrypt:<br><br>$new"; } else { echo "<form method=post action=zmiana.php>Napisz jakis tekst zawierajacy adresy stron www i emaile i kliknij 'OK'.<br><br><textarea name=tekst cols=60 rows=10></textarea><br><br><input type=submit value=OK></form>"; } ?>[/php:1:3408d7a0ac] Jak to działa, możecie zobaczyć pod tym linkiem: http://cod.home.staszic.waw.pl/testy/zmiana.php. Skrypt szuka ciągu "http://" i zamienia na hyperlink. Znajduje też małpę (@) i daje klikalny odnośnik z poleceniem "mailto:". Skrypt radzi sobie z linkami, po których jest kropka, przecinek, wykrzyknik lub znak zapytania. Przetestujcie sobie i powiedzcie co o tym sądzicie (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) . |
|
|
![]() ![]() |
![]() |
Aktualny czas: 8.10.2025 - 16:32 |