Autor Zpráva
Zdeněk Kundrát
Profil
Mám web a potřeboval bych aby, když někdo zadá www.seznam.cz aby mu to zprovoznilo tak, aby ten odkaz byl funkční.
Dík předem Zdendaki.
Bubák
Profil
Vůbec nechápu dotaz a mám za to, že nejsem sám. Jediné, co mi je jasné je, že máš web.
jenikkozak
Profil
Asi hledáš toto: www.regularnivyrazy.info/prevedeni-url-na-odkaz.html.
Zdeněk Kundrát
Profil
jenikkozak:
Jo, dík.


Tu to je: <? ((http://)|(www\.))([^ ]+[^,. ]) ?>
<a href="http://<? echo '$3$4' ?>"><? echo"$2$3$4" ?></a>.
Zdeněk Kundrát
Profil
Ještě bych potřeboval to zprovoznit.
lionel messi
Profil
Zdeněk Kundrát:
Ještě bych potřeboval to zprovoznit.
Čo by si chcel rozbehať? Rada od [#3] jenikkozak nepomohla? Regulár uvedený v [#4] ti nefunguje? Skús takto (som len začiatočník, asi tam bude nejaká chybka):

<?php
$kde = "Akýkoľvek zadaný text s odkazom na http://diskuse.jakpsatweb.cz alebo kamkoľvek inam, napr. www.pravda.sk by mal byť klikateľný."
preg_replace ('~((http://)|(www\.))([^ ]+[^,. ])~', '<a href="http://$3$4">$2$3$4</a>', $kde);
?>

Daj vedieť, či pomohlo :-) .
Zdeněk Kundrát
Profil
Toto mi nefunguje :-(
lionel messi
Profil
Ach jaj, veľmi sa ospravedlňujem, to by som nebol ja, aby som v tom nespáchal 2 triviálne chyby, toto by už naozaj malo byť ok:

<?php
$kde = "Akýkoľvek zadaný text s odkazom na http://diskuse.jakpsatweb.cz alebo kamkoľvek inam, napr. www.pravda.sk by mal byť klikateľný.";
echo preg_replace ('~((http://)|(www\.))([^ ]+[^,. ])~', '<a href="http://$3$4">$2$3$4</a>', $kde);
?>
Fisir
Profil
Reaguji na lionela messiho:
Ještě bych v reguláru nahradil http:// za https?://.
Zdeněk Kundrát
Profil
Fisir:
Ještě bych v reguláru nahradil http:// za https?:/
Toto nechápu. :-\


Funguje to :-D
TomasJ
Profil
Zdeněk Kundrát:
„Ještě bych v reguláru nahradil http:// za https?:/“
Toto nechápu. :-\

HTTP a HTTPS jsou protokoly, přičemž HTTPS znamená Secure(d).

Ten otazník, který Fisir přidal (http:// za https?://) říká, že předcházející znak může být 0x a nebo 1x. Přesněji se tam to S nemusí vyskytovat, ale může a odkaz bude chápán a převeden. V tvém stávajícím kódu ti regulár převede jen http://xxx.cz a www.xxx.cz. Zadáš-li například https://facebook.com, odkaz nebude klikatelný (nepřevede se).

Takže regulár by měl vypadat třeba nějak takto: ~((https?://)|(www\.))([^ ]+[^,. ])~


Ještě bych upravil nahrazení na <a href="$1$4">$1$4</a>, aby se zachoval i protokol
Toto téma je uzamčeno. Odpověď nelze zaslat.

0