Autor Zpráva
vertigo4
Profil
ahoj mám podle http://interval.cz/clanky/tvorba-rss-v-php/ udělán rss výstup článků z databáze... jen mi nějak blbne kódování viz http://jimmyhayek.unas.cz/news.php .. tak nevím... při vypisování článků na stránkách vkládám mysql_query("SET NAMES 'utf8'"); a vše šlape, ale u rss to nějak neplatí a kódování blbne pořád i když jsem toto aplikoval do kodu
djlj
Profil
FAQ
vertigo4
Profil
djlj
ano, pěkný odkaz, ale to můj problém neřeší
djlj
Profil
vertigo4
Napsals málo informací, tak nevím, co bys chtěl. Tyhle ironické věty si piš třeba babičce.

Jinak ten tvůj RSS kanál neposílá žádné kódování v hlavičce, zkus jej tam přidat. Ověř taky, zda máš soubor uložen v kódování utf-8 (to je třeba informace, kterou jsi sem mohl už dávno napsat; pokud to je „i když jsem toto aplikoval do kodu“, tak to zkus příště napsat srozumitelněji).

Tak je problém jinde, zkus si to otevřít v IE 6:
Zadané kódování není v systému podporováno. Při zpracování prostředku http://jimmyhayek.unas.cz/news.php došlo k chybě. Řá...

<?xml version="1.0" encoding="utf8"?>


Patří tam utf-8.
vertigo4
Profil
vertigo4
ano, tys ale toho taky moc nenapsal... díky za druhý příspěvek
vertigo4
Profil
djlj
a jaký soubor uložen v kodování? já vypisuji z databáze
vertigo4
Profil
djlj
mohl bys, prosím, objasnit posílání kódování v hlavičce?
djlj
Profil
1. PSPad: Formát -> UTF-8
2. charset=utf-8
vertigo4
Profil
djlj
jj ale u jakého souboru? ty myslíš jednotlivé soubory .php pro vytváření rss mám nastavit kódování?
vertigo4
Profil
problém bude asi tu:

<?php
header('Content-type: text/xml');
// vložení potřebných tříd
include 'rss_generator.class.php';
include 'xml_generator.class.php';
include 'xmysql.class.php';
// pomocí hlavičky nastvíme content-type¨na XML
// vytvoření a nastavení třídy pro databázi
$sql = new tMysql;
$sql->dbName = 'xxxxxx;
$sql->dbServer = 'xxxxxxxxx';
$sql->dbUser= 'xxxxxxx';
$sql->dbPassword= '********';
// připojení k db
$sql->connect();
// provedení sql dotazu
$sql->query('rss',
'SELECT *'.
'FROM blog ORDER BY datum DESC LIMIT 10'
);
mysql_query("set names 'utf8'");


// vytvoření instance třídy c_rss_generátor
$rss = new c_rss_generator;
// vytvoření kanálu
$rss->add_chanel('jimmy',
array(
'title'=>'Jimmy Hayek',
'description'=>'Blog mladého novináře',
'link'=>'http://jimmyhayek.unas.cz',
'language'=>'cs',
)
);
// procházení výsledků dotazu a vkládání do kanálu
while($row = $sql->fetch_assoc('rss')) {
$rss->add_item('jimmy',
array(
'title' => $row['nazev'],
'description' => $row['popis'],
'author' => $row['autor'],
'link' => "http://jimmyhayek.unas.cz/".$row['adresa'],
// prevod z timestampu na požadovaný fromát
'pubDate' => gmdate('D, d M Y H:i:s', $row['datum']),
)
);
};
// vytvoření rss a odeslání na výstup
echo $rss->create_rss();
?>

nevím asi to kódování tam nějak nesedí...
djlj
Profil
jj ale u jakého souboru?
http://jimmyhayek.unas.cz/news.php
vertigo4
Profil
djlj
jo tak to mám nastavené na utf-8, problém bude s převodem kodování z dat.
djlj
Profil
A co takhle:

mysql_query("SET NAMES `utf8`");
vertigo4
Profil
djlj
diky za tvoji ochotu, ale bohužel... ja už fakt nevím, v čem mám chybu...
vertigo4
Profil
ježišš.... já jsem ale... stačilo jen mysql_query("set names 'utf8'"); hodit před $sql->query('rss',
'SELECT *'.
'FROM blog ORDER BY datum DESC LIMIT 10'
); a problém j vyřešen
Toto téma je uzamčeno. Odpověď nelze zaslat.

0