Autor Zpráva
Terk
Profil
Ahoj chlapi / dámy.
Mám PHP skripty a ukládám a čtu z databáze MySQL. Texty ve skriptech jsou CP-1250, databáze je v kódování CS-UTF-8 (používám PhPMyAdmin 2.6.3), magic_quotes_gpc=ON, NEpoužívám MySQL_Query('set names cp125O'), lokálně používám EasyPHP 2.0B1

Na serveru mi při uložení dat z formuláře a opětném načtení změní "ť" na "?". Na lokálu to nedělá.

Jak nejlépe nastavit kódování (a kde - php, direktivy PHP,MysQL,...) aby to vyhovovalo standardu a k těmto chybám nedocházelo ?

Díky !!!
ShiraNai7
Profil
~ mít u tabulek a sloupců v databázi nastaveno dané kódování
~ po připojení k mysql posílat SET NAMES `kodovani`
~ mít skripty na serveru (php) uložené ve správném kódování
~ nastavit interní kódování v php funkcí mb_internal_encoding()
~ posílat do prohlížeče header s definicí správného kódování
~ mít v hlavičce stránky (<head>) meta tag s definicí kódování

Nevím jestli jsou všechny tyto body nutné a jestli nejsou některé jen pro utf-8, ale tak to dělám já a nemám žádný problém.
Terk
Profil
ShiraNai7 Díky !!!
Ještě prosím upřesnění:
- Vše by mělo být asi UTF-8. Jak převedeš skript PHP do UTF-8 ? Mám Windows, takže programuji ve 1250. To zajišťuje ta funkce mb_internal_encoding() ?
- set names('kodovani') - to kodovaní je UTF-8 (tj. cilove kodovani ? Nebo CP1250 (zdrojove). Asi UTF-8, že jo ? Sloupce v tabulce má v UTF-8, skripty vlastně po úpravě taky, tak set names('utf-8'). Je to správně ? Díky !!!!!!
ShiraNai7
Profil
Terk
Všechny zmiňované věci musíš mít ve stejném kódování. Psal jsem že některé jsou asi nutné jen pro utf-8, jestli používáš cp1250, tak se musíš podle toho zařídit.

Já mám taky windows, ale dělám v utf-8. Lepší editory s tím nemají problém. Dělám v PSPadu
Terk
Profil
Právě se snažím taky dělat v utf-8. Tj. databázi tak mám, skripty mám v 1250. Používám PhpEd.

Takže to nastavení na utf-8 musím provést už při psaní skriptů v editoru ? Nebo stačí to mb_internal_encoding() ? Díky (že furt prudim...)
ShiraNai7
Profil
Nastavit se to musí přímo v editoru, aby byl ten soubor fyzicky v utf-8 kódování.
Terk
Profil
ShiraNai7 Díky, chlape :-) !!!

Vaše odpověď

Mohlo by se hodit

Odkud se sem odkazuje


Prosím používejte diakritiku a interpunkci.

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

0