Oznámení

Provoz fóra byl ukončen

Problém s „entity“ a „singleline“. Nejsem si přesně jist… :)

před 12 lety

sulphate
Člen | 5

Zdravim,

omlouvám se že otravuju… Texy! používám velmi krátce, ještě nemám důkladně všechny moduly přečtený… a zatím jsem se setkal se dvěma problémy, které se mi doposud nepodařilo vyřešit:

  1. potřeboval bych, aby mi Texy! vrátilo kód pouze na jednom řádku. V podstatě něco jako singleline, ale aby tam bylo vše zapnuto (bloky, atd…) prostě aby to fungovalo naprosto stejně, jen byl kód na jednom řádku,
  2. a také bych potřeboval, jestli nelze nějakým „publicem“ vypnout převádění veškerých znaků do entit.

ad 2) Potřebuji na jedné stránce získat pouze čistý text, kde nebudou ani html tagy, ani Texy! syntax, ani entity ( &#?????; ).

Čistý text včetně Texy! syntaxe si převedu do zformátovaného textu, poté odstraním html tagy, ale bohužel s těmi entitami si nevím rady. A mám takový pocit, že to spadá do texy, takže je nesmyslné si na to vytvářet vlastní funkci.

Abych upřesnil, proč potřebuji odstranit entity… takto upravený text oříznu na x znaků a pochopitelně nastane problém, pokud je text ukončen neukončenou entitou… ( &#?? )

Takže doufám v nějaké řešení, které by mi velice pomohlo. :)

Díky

před 12 lety

David Grudl
Nette Core | 6806

ad 2) k tomu slouží funkce toText

ad 1) příliš vám nerozumím. SingleLine je nebloková verze formátování, celý text se pak chápe jako jeden blok (odstaveček) a zformátují se pouze odkazy, obrázky, tučné, kurzíva atd.

před 12 lety

sulphate
Člen | 5

jo, na toText jsem koukal :)

mno, mám na mysli, že pokud napíši:


Text, text, text.

Text, text, text.


výsledkem přes texy bude:


<p>Text, text, text.</p>

<p>Text, text, text.</p>


a já bych potřeboval:


<p>Text, text, text.</p><p>Text, text, text.</p>


Aby prostě vše bylo na jednom řádku bez mezer, a \n"ek" :) Je to v podstatě zbytečné, ničemu to nepomůže, ale mám rád přehlednost ve zdrojovém kódu. :)

před 12 lety

sulphate
Člen | 5

Pomocí:

$zaznam['vzkaz'] = $texy->process($zaznam['vzkaz'], TRUE);
$zaznam['vzkaz'] = $texy->toText();
$zaznam['vzkaz'] = mb_substr($zaznam['vzkaz'], 0, 45);

jsem tedy získal pouze čistý text, kde nejsou ani html tagy, ani Texy! syntax, ani entity. A tím pádem, jsem i ušetřil svojí funkci na odstranění html tagů, takže k bodu č. 2, je splněno. :)

Ještě bych byl rád, kdyby šlo nějak vyřešit i to druhé. :(

Editoval sulphate (13. 2. 2007 15:48)

před 12 lety

David Grudl
Nette Core | 6806

No tak si prostě odstraň z textu \n

před 12 lety

sulphate
Člen | 5

lol, no vidíš to… moc práce škodí, díky :D