Vydělávej až 160.000 Kč měsíčně! Akreditované rekvalifikační kurzy s garancí práce od 0 Kč. Více informací.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Avatar
mapak
Člen
Avatar
mapak:20.3.2015 11:37

Ahoj! Narazil jsem na zapeklitý problém. Mém webovou stránku s nastylovanými odkazy typu <a href="..." style="noprin­t">Odkaz</a>. Ovšem odkazy jsou funkční pouze na intranetu a pro kolegy mimo intranet dělám export stránky do PDF. A právě ve vyexportovaném PDF bych potřeboval, aby již odkazy nebyly odkazy, ale obyčejné řádkové prvky. Bohužel, když jim přidám CSS vlastnost "display:none", tak zmizí i všechny vnořené prvky bez ohledu na jejich vlastnost "display". Napadlo mě sice řešení vložit nejdřív odkaz, který se nebude exportovat a následně za něj <span>, který se naopak nebude zobrazovat na webu, ale jen v exportu do PDF. To je ale dost neelegantní a navíc tím obsah odkazu duplikuju.

 
Odpovědět
20.3.2015 11:37
Avatar
Odpovídá na mapak
Uživatel sítě :20.3.2015 13:45

Ahoj, co třeba použít reguláry?

<?php
    $pattern = '~<a href="(.+)">(.+)</a>~i';
    $text = 'Toto je odkaz <a href="www.itnetwork.cz">na itnetwork.cz</a>';

    echo preg_replace($pattern, '\\1', $text);  //Vrátí (Toto je odkaz www.itnetwork.cz)
    echo '<br>';
    echo preg_replace($pattern, '\\2', $text);  //Vrátí (Toto je odkaz na itnetwork.cz)
Editováno 20.3.2015 13:47
Nahoru Odpovědět
20.3.2015 13:45
Chybami se člověk učí, běžte se učit jinam!
Avatar
mapak
Člen
Avatar
mapak:24.3.2015 12:55

Ahoj! Díky! Musel jsem se tím trochu prokousávat, protože regulární výrazy moc neovládám, ale můj problém by to myslím stejně nevyřešilo. Potřebuju zobrazit buď

<a href="odkaz>Název</a>

(pro zobrazení na webu) nebo jen

<a>Název</a>

(pro export do PDF. Nakonec jsem to vyřešil zasíláním parametru v URL. URL je posláno generátoru PDF, který stránku i s parametrem vezme a vytiskne do PDF. Díky parametru je zajištěné odstranění odkazu resp. jeho atributu "href".

 
Nahoru Odpovědět
24.3.2015 12:55
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 3 zpráv z 3.