Autor Zpráva
Inpocasi
Profil
Nainstaloval jsem si do minibb češtinu, ale místo háčků vypisuje otazníky. Zkoušel jsem i změnit hlavičku úvodního html dokumentu, ale nepomohlo to. Nevíte kde může být chyba?
tiso
Profil
chyba je v rôznych kódovaniach... (DB, PHP, hlavičky)
Inpocasi
Profil
tiso
A co s tím?
peta
Profil *
Inpocasi
Co asi?
Zkontrolovat a zmenit kodovani v SQL na cestinu
COLLATE cp1250_general_ci
//mysql_query("SET NAMES 'cp1250'") or die("Error: Nastav kodovani DB!".mysql_error());
Zkontrolovat a zmenit kodovani v PHP na cestinu
Zkontrolovat a zmenit kodovani v HTML na cestinu (META tagy charset)
Inpocasi
Profil
No databázi mám nastavenou dobře, html taky ale php ne. Kde to mám v php změnit
Yuhů
Profil
mám stejný problém. Zdá se mi, že se při ukládání příspěvků někde po cestě vyhazují všechny háčkované znaky a nahrazují se otazníky. V databázi už jsou totiž otazníky. Takže problém s kódováním, jak se domnívali Tiso a Peta bez toho, aby to vyzkoušeli, to opravdu není.

Objevuje se to až ve druhé verzi miniBB. Verze jedničkové řady to nedělaly. Ocením radu.
AlešD
Profil
Možná je to blbost, ale zkusit dát hned za příkaz pro přohlášení k databázi tohle:

mysql_query("SET
character_set_results=utf-8,
character_set_connection=utf-8,
character_set_client=utf-8");

utf-8 pochopitelně změnit podle zvolené znakové sady.
Yuhů
Profil
ale já nemám problém v tom, že by se ukládala špatná znaková sada. Problém je v tom, že se znaky s háčky přepíšou na otazníky. Vždycky. Ať používám jakékoli kódování databáze nebo stránek (samozřejmě vždy se snažím používat totéž kódování).

Tak dobře. Zkusím v té džungli kódu najít příkaz na připojování k databázi a tohle do něj přidat. Už jsem udělal pokusů asi třicet, tak mě jeden další nezabije.
Yuhů
Profil
nic, nepomohlo to.
Yuhů
Profil
takže nakonec byl problém v mé neznalosti serverového prostředí. V mém případě se problém vyřešil phpkovým zápisem

mysql_query("SET names latin2");

hned po připojení k databázi. Domnívám se, že to přepíná interní kódování databáze (které je asi v MySQL reprezentováno proměnnou character_set_database), které bylo nastaveno na latin 1.

Děkuju za rady, nasměrovaly mě správným směrem. To COLLATE nezabralo, to SET NAMES funguje.
Toto téma je uzamčeno. Odpověď nelze zaslat.