Autor Zpráva
Pól
Profil *
Mám problém. Dejme tomu, že tento text:

RSS figuruje dnes již na mnoha stránkách. Je několik způsobů, jak vystavit RSS feed - bohužel nejčastějším způsobem je výpis kódu ve formátu RSS na .aspx stránku. Existuje ale elegantnější a hlavně výkonnější řešení, v podobě vlastního HTTP handleru.

Se vypíše přesně tak jak ho teď vydíte, ale ve zdrojáku vypadá třeba, takto:

RSS figuruje dnes již na mnoha stránkách.

Je několik způsobů, jak vystavit RSS feed - bohužel nejčastějším způsobem je výpis kódu ve formátu RSS na .aspx stránku.

Existuje ale elegantnější a hlavně výkonnější řešení, v podobě vlastního HTTP handleru.


Jak se toho odřádkování zbavím ?
Leo
Profil
To bych resil spis u toho, jak to generujete, ten text, ne dodatecne, Leo
Pól
Profil *
Dobrá, ale i v tom případě si nevím rady.
souki
Profil
tohle mi dělá PSPad když otevřu cizí zdroják...
Leo
Profil
"Dobrá, ale i v tom případě si nevím rady."

No a jak jste ten text vytvoril? Leo
souki
Profil
myslím že tady je problém ve windowsovém a linuxovém řádkování
Pól
Profil *
Leo

Kdyby šlo o mě, tak bych tam ty odřádkování jednoduše nedělal.

Ale původem je to, že někteří návštěvníci se bez toho neobejdou a mají silné nutkání delat mnoho odstavců a ukájet tím tak své perverzní choutky. A tak, když píšou něco do nějakého textboxu(textarea) tak mačkají enter hlava nehlava a chudinka databáze to pak uloží i s tímto odřádkováním a následně to i takhle vypíše do zdrojáku.
souki
Profil
tak to by mohlo stačit udělat regulérní výraz
$text = EReg_REplace("\n\n","\n",$text);
popř do přes Ereg ještě zacyklit
Pól
Profil *
souki

Bouhžel tímto způsobem to nejde, je to první věc, kterou jsem zkoušel, ale bez výsledků.
Leo
Profil
Prvni vec - podivejte se, jake tam mate konce radku, jsou prinejmensim trojiho druhu, Leo
Pól
Profil *
Leo

Jasně, jenže já jich moc neznám.
djlj
Profil
Pól
Leo to asi myslel tak, že máš krom \n zkusit ještě \r, nebo \t.
Pól
Profil *
Funkce substr_count() mi hodila 2, konkrétně:

echo substr_count($obsah, "\n");
souki
Profil
nebo to trošku znormalizovat...udělat:
$text = EReg_REplace("<br( /)?><br( /)?>","\n",nl2br($text));
souki
Profil
djlj
a já vždycky myslel, že /t je na tabulátor
Leo
Profil
No nejspis tam budete mit

\r\n

jinak treba

http://en.wikipedia.org/wiki/Newline

Leo
djlj
Profil
souki
Jo, je, s opačným lomítkem... sorry
Pól
Profil *
Leo

No jo, nakonec pomohl dvojkombinace:

$obsah = ereg_replace("\r\n","\n",$obsah);
$obsah = ereg_replace("\n\n","\n",$obsah);

Po té co jsem si nechal vypsat funkcí substr_sount() i \t a \r mi to bylo jasně, díky.
Toto téma je uzamčeno. Odpověď nelze zaslat.

0