Autor Zpráva
fritol33
Profil
Dobrý den,

mám problém s diakritikou. V db mám text uložen se speciálními HTML znaky. A chtěl bych ji převést zpátky (vypsat) + pak odeslat do automatického systému, kde nesmí být dia. Hledal jsem (http://diskuse.jakpsatweb.cz/index.php?action=vthread&topic=15459&forum=9&page=-1) a ani jedno řešení nefunguje :o( Prosím poraďte
Function hacky($tex)

    {

        return strtr($tex,

            "áčďéěíľňóřšťúůýžÁČĎÉĚÍĽŇÓŘŠŤÚŮÝŽ",

            "acdeeilnorstuuyzACDEEILNORSTUUYZ");

    }
$prvni = "P& #225;n";
$druhy = "& #381;lut& #253;";
---
$prvni = hacky(htmlspecialchars_decode($prvni));
$druhy = hacky(htmlspecialchars_decode($druhy));

Budulinek
Profil
nebude to tim, ze porovnavas znakovou entitu se znakem samotnym? Kdybys mel $prvni = "Pán"; tak by to slo. V tomto pripade budes muset nahrazovat celou entitu...
AM_
Profil
Budulinek
ne, má to myslím si dobře, všimni si funkce htmlspecialchars_decode.
fritol33
ověřil jsi si, že htmlspecialchars_decode ti funguje správně? PHP žádnou takovou funkci nemá, takže soudím, že sis ji napsal sám, a tam by mohla být chyba; tady ji nevidím.
fritol33
Profil
Budulinek
ne, má to myslím si dobře, všimni si funkce htmlspecialchars_decode.
fritol33
ověřil jsi si, že htmlspecialchars_decode ti funguje správně? PHP žádnou takovou funkci nemá, takže soudím, že sis ji napsal sám, a tam by mohla být chyba; tady ji nevidím.
Teď již to funguje normálně, převádím to tedy rovnou, navíc aplikace měla výstup "č" místo "& #269;", což mi předtím nedošlo. Měl jsem fci napsanou dříve a tam fungovala, takže jsem nekontroloval... :o( Díky za pomoc :o)

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0