Autor Zpráva
Owery
Profil
Zdravím, mám takový kód

<?php
$tbl = "novinky";
mysql_connect("127.0.0.1", "root", "")or die("cannot connect"); 
mysql_select_db("test")or die("cannot select DB");
$sql = "SELECT * FROM ".$tbl." ORDER BY id;";
$result = mysql_query($sql);
$zaznam = mysql_fetch_array($result);
echo("Novinka číslo: ".$zaznam['id']."<br> 
   Nadpis: ".$zaznam['nadpis']."<br>
   Autor: ".$zaznam['jmeno']."<br>
   Text novinky: ".$zaznam['text']."<br>
   Čas: ".$zaznam['time']."<br>
   Datum: ".$zaznam['date']);
?>

takto jsem vytvořil tabulku v databázy (kódóvání utf-8)

CREATE TABLE `novinky` (
  `id` int(4) COLLATE utf8_czech_ci NOT NULL AUTO_INCREMENT,
  `nadpis` varchar(65) COLLATE utf8_czech_ci NOT NULL DEFAULT '',
  `jmeno` varchar(65) COLLATE utf8_czech_ci NOT NULL DEFAULT '',
  `text` text COLLATE utf8_czech_ci,
  `time` time COLLATE utf8_czech_ci NOT NULL DEFAULT '',
  `date` date COLLATE utf8_czech_ci NOT NULL DEFAULT '',
  PRIMARY KEY (`id`)
);

a v index.php mám v hlavičce

<meta http-equiv="content-type" content="text/html; charset=utf-8">



a přesto všechno vypadá výstup v prohlížeči takto:








Nevíte co s tím je, případně co mám špatně?
-abych nezapoměl, kódování php souboru mám v pořádku, když dám kódování 'iso-8859-2' tak vše téměř funguje, akorát mi to nevypíše písmenko 'č' a 'ů', pokud je přečtu z databáze, pokud natrvo napíšu echo("č ů"); tak funguje. Hlavně mě zaráží proč mi utf-8 udělá takovou patlaninu
Again
Profil
Stačí po připojení k databázi použít:

mysql_query("SET NAMES 'utf8'");

a mělo by to fungovat.
Owery
Profil
Děkuji, funguje to, akorát jen na ten výpis z databáze, ty ostatní (menu, natvrdo napsaná diakritika) jsou pořád v těch otazníčkách :-(

Asi to udělám kódování to iso výpis z DB bude utf a mělo by to šlapat

edit/ tak to fungovat nebude, musí bejt jen jedna znaková sada
candiess
Profil
Owery:
Tak si ty zdrojové soubory ulož v kodování UTF-8, jinak tam vzniká kolize
Owery
Profil
nakonec jsem udělal kódování kompletně v iso takže tam mám mysql_query("SET NAMES 'latin2'"); a to už funguje fajn, tak snad to bude už dál bez problémů
candiess
Profil
Owery:
sry přehledl jsem ty doplňující informace, tak zkus windows1250, ja ho používám a fará mi skvěle :)
Majkl578
Profil
Owery, candiess:
Smím vědět jaký máte důvod nepoužít UTF-8?
candiess
Profil
Majkl578:
Bude stačit jako důvod to, že jsem na něco zvyklý a vždycky mi to fungovalo a neřešil jsem s tím žádný problém? UTF-8 je fájn, nikomu ho neberu, jen se tady snažíme dopracovat k funkčnímu řešení

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