Autor | Zpráva | ||
---|---|---|---|
Suta Profil |
#1 · Zasláno: 20. 1. 2006, 11:54:07 · Upravil/a: Suta
Prosím o radu. Kód rozezná internetovou adresu a přidá odkazy.
$text = EregI_Replace("(http://[^ ]+\.[^ ]+)", " <a href=http://\\1>\\1</a>", $text); Převede např. text www.neco.cz na <a href=http://www.neco.cz>www.neco.cz</a> a text http://neco.cz na <a href=http://neco.cz>http://neco.cz</a> Jak zapsat, aby rozeznal i text např. http://www.neco.cz (tedy http i www dohromady) a aby se to nehádalo s již výše napsanými výrazy ? Jasně, tento výraz rozezná tvar *http://www.* $text = EregI_Replace("(http://www.[^ ]+\.[^ ]+)", " <a href=http://\\1>\\1</a>", $text); , ale narazí-li na tento tvar výrazy, které detekují pouze to *www.* či *http://* - celé se to rozhaší :-) Dík moc za pomoc. |
||
Hugo Profil |
#2 · Zasláno: 20. 1. 2006, 14:14:55
Já používám tady tuto funkci
|
||
Suta Profil |
#3 · Zasláno: 20. 1. 2006, 14:40:07
Dík, Hugo. Je to pěkně napsané.
Jinak teď mě napadlo jednoduché řešení mého problému, prostě nejprve nahradím všechny řetězce *http://www* v textu za http:// - a pak to nechám normálně projet přes konkrolu www. a http:// :) Nevíte ještě někdo, jestli všechny stránky na světě fungují jak pouze s www na začátku, tak pouze s http:// ? Nevím to úplně přesně. Je to jedno, která z možností (případně i ta třetí http://www ) je na začátku adresy? |
||
Hugo Profil |
#4 · Zasláno: 20. 1. 2006, 14:44:15
Suta
www není u většiny adres nezbytné. A spousta webů s www na začátku nejede. Např. http://www2.imagiware.com/ |
||
Suta Profil |
#5 · Zasláno: 20. 1. 2006, 14:53:07
Takže je dobrým řešením doplnit do všech odkazů získaných z formulářů celé http://www. ? Pak by to měla být jistota u všeho, ne ?
|
||
Hugo Profil |
#6 · Zasláno: 20. 1. 2006, 14:57:44
Suta
Přečti si ještě jednou co jsem napsal. Určitě to není dobrý nápad. |
||
Suta Profil |
#7 · Zasláno: 20. 1. 2006, 14:59:49
www není u většiny adres nezbytné - jo, teď tomu rozumím, napsal jsi to pěkně :)
A když dám všude jen http:// ? |
||
Hugo Profil |
#8 · Zasláno: 20. 1. 2006, 15:02:46
Myslel jsem spíš toto
A spousta webů s www na začátku nejede To znamená, že máš např. URL www2.neco.com a pokud k tomu přidáš www., tak to samozřejmě nepojede. |
||
Suta Profil |
#9 · Zasláno: 20. 1. 2006, 15:13:47
Jasně. A ještě jednou: když dám všude jen http:// , pojede to ?
|
||
Hugo Profil |
#10 · Zasláno: 20. 1. 2006, 15:15:31
Pokud bude zbytek v pořádku, tak jo.
|
||
Suta Profil |
#11 · Zasláno: 20. 1. 2006, 15:20:10
Díky.
|
||
Časová prodleva: 18 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0