30kmhcz
Vzkazy administrátorům => Vzkazy uživatelů administrátorům => Téma založeno: Behemot 04 Února 2018, 11:17:54
-
Snažil jsem se vecpat něco delšího do podpisu a zdá se, že kalkulačka počítá špatně. Zobrazuje to přesně 300 znaků, ale podle Notepadu++ to je 327. Což pak i skript správně vyhodnotí a vyhodí chybu:
Nastaly tyto chyby při ukládání tvého profilu:
Váš podpis nemůže být delší než 300 zanků.
-
Že by vlastnost UTF-8?
-
Počítadlo ve fóru si tam umí poradit s většinou nadstandardů, včetně běžného UTF-8 (nativní podpora - JS interně používá UTF-16) a windows odřádkování (počítadlo ve fóru to ošetřuje). Trochu zvláštní skupinu tvoří novější emotikony, které jsou 3bytové, což překračuje možnosti Javascriptu v současných browserech.
Použil jste ve svém podpisu emotikony? Ty by to mohly rozbít. Pokud jsou moje doměnky správné a použil jste emotikony, navrhuji to vyřešit style „sestimsmiř“.
-
Nic takovýho.
-
Tak v tom případě poprosím, abyste sem vložil text, který jste chtěl dát do podpisu. Předpokládám, že byl-li určen do podpisu, byl tedy veřejný. Díky
-
Pokusím se to znovu vydumat, mmnt…
Tak podařilo se mi to opět podle karkulačky pokrátit na rovných 300, ve skutečnosti víc: Ten, kdo umí, snadno poradí tomu, kdo neumí, či opraví rozbité věci, aby nadále sloužily. Nikoho neodmítne a s každou výzvou se zdokonaluje. Ten, kdo ví, je tak učitelem toho, kdo neví. A ten tak pro něj představuje lekci. Kdo si neváží učitele či nové lekce, bude bloudit, i kdyby byl sebechytřejší.
Asi je v tom fakt schovaná nějaká moudrost navíc ;D
-
Tak už to mám – počítadlo na webu funguje správně. Problém je v tom, jak to počítá kontrola při ukládání do databáze. Zkusil jsem tam vložit Váš text a opravdu to vyhodilo chybu a ve formuláři to ořízlo o 23 znaků, což přesně odpovídá počtu skupin znaků s diakritikou.
Poprvé jsem kouknul do kódu fóra, je tam dost podivná konstrukce, která by asi má podle záměru autora počítat s UTF, ale tohle (https://github.com/SimpleMachines/SMF2.1/blob/ac85d8c0fb1b070aaabfe622cf02839682c7eafb/Sources/Load.php#L146-L149) je fakt dost šílený kód. Zkusím chybu nahlásit autorům fóra.
EDIT: Zkusil jsem to u sebe nasimulovat a kupodivu to funguje dobře. Ale je potřeba, aby fórum bylo nastaveno do kódování UTF-8 někde v nastavení, jinak to počítá s kovenčním kódováním, tedy blbě. Kde přesně se to nastavuje, to bohužel netuším, neznám administraci. Stejně tak netuším, co se stane, když by se teď fórum přenulo do jiného kódování, jestli to nerozbije něco jiného :-/
-
Tak necetl jsem cely kod, ale pokud je DB M-B, melo by stejne pocitat i pocitadlo, tedy M-B a nejak tam nevidim mb_strlen()...patrne nejaka obezlicka kvuli php<4.3...uriznem to a dobry :D
-
:o
-
Na Homepage je právě vidět, že Forum špatně ořízlo text v půlce vícebytového znaku.
Tak necetl jsem cely kod, ale pokud je DB M-B, melo by stejne pocitat i pocitadlo, tedy M-B a nejak tam nevidim mb_strlen()
Jedna věc je mít dobře nastavenou databázi. Druhá věc je, jak je nastaveno fórum. Podle zdrojáků je zřejmě někde v nastavení UTF-8 vypnuto a fórum pak řetězce nezpracovává správně. Podle všeho to vypadá, že to bude tím.
-
Je zaplá podpora UTF-8 a zkonvertovaná databáse?
https://wiki.simplemachines.org/smf/UTF-8_Readme
-
Forum ma instalovany jazyk CZ v kodovani UTF8.
Prispevky a texty funguji korektne.
Do hlubin nastaveni jazykoveho balicku, pripadne do revize kodu se poustet nebudem #sorryjako ;)
Lidi, co to maji na starosti si hraji s dulezitejsimi vecmi a podpis, respektive jeho delka fakt neni priorita.