ugrás a tartalomhoz

cirill betűk

amikor · 2007. Jún. 17. (V), 10.04
Orosz-magyar szótárt próbálok csinálni. Mysql-ben utf8_general_ci -ra van állítva a kódolás. A html oldalon pedig:

<html xmlns="http://www.w3.org/1999/xhtml" lang="ru" xml:lang="ru">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

de az orosz karakterek helyére ?-jeleket tesz. phpmyadminban pedig jól megjeleníti.
a betűket úgy írtam be, hogy átállítottam a billentyűzetet oroszra.
van valakinek vmi ötlete, hogy csináljam?
 
1

Content-Type

attlad · 2007. Jún. 17. (V), 11.21
Milyen Content-Type HTTP fejlécet küldesz? Ott is UTF-8 legyen megadva vagy semmi.
2

ellenőrizd a kódolást

bandi · 2007. Jún. 17. (V), 12.32
ha Firefoxszal nézed az oldalt (fejlesztés során mi mással néznéd :-) akkor könnyedén megnézheted másik kódolással a view/character encoding menüpontban. Meg nézheted az alkalmazott kódolást a lap jobb gombos menüjének "page info" részében is. Ha nem utf-8-at látsz, akkor valamit át kell állítani a szervereden. Pl. apache-ban a .htaccess-ba kell valami "adddefaultcharset utf-8" szerűség, vagy akár az oldalt generáló szkript elejére rakhatsz egy header küldést (php-ban header();), ha nem bütykölheted a szervert.

kellemes állítgatást!

bandi
3

ellenőriztem

amikor · 2007. Jún. 17. (V), 12.36
utf-8 van mindenhová írva.. nem tudom mi lehet a gond
itt az oldal:
http://www.apellata.extra.hu/orosz/index.php
4

iso-8859-2

rrd · 2007. Jún. 17. (V), 12.40
Ez nem utf8-ban jön hanem iso-8859-2-ben

az index.php elejére kéne egy ilyen:
header('Content-Encoding: utf-8'); 
header('Content-Type: text/html; charset= utf-8'); 
5

nincs változás

amikor · 2007. Jún. 17. (V), 12.52
beraktam, de ugyanolyan.
6

vegyes felvágott

bandi · 2007. Jún. 17. (V), 12.54
most néztem az oldalad, a magyar szavakban az ékezetes betűk helyett kérdőjelek, ez mindenképpen iso-8859-2-t sejtet, és igazam is volt :-) Nézd meg a szövegszerkesztőd, hogy mi van beállítva! Kódold át utf-8-ba, és akkor a magyar szövegekkel nem lesz gond. A cirill betűk meg sehogyan sem akartak megjelenni, talán ott is rossz valami beállítás.
7

a szövegszerkesztőm?

amikor · 2007. Jún. 17. (V), 12.58
nem elég ha az elején beírom ezt:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> ?
sql táblábol olvassa be a szavakat ott utf8_general_ci-t állítottam be.
8

meta nem elég

bandi · 2007. Jún. 17. (V), 15.05
A meta tag nem elég, mindenképpen el kell küldenie az utf-8 headert a kiszolgálónak. Nem tudom, hogy mivel szolgálod ki az oldalad, de ott is lehet hiba, pl. én tapasztaltam, hogy php-ben nem mindegy, hogy hogyan kezeled az adatbázisból kinyert adatokat, és talán kiolvasáskor ki kell adni egy "set names" parancsot, javaslom a mysql reference-t.

bandi
9

lekérdezés?

kerzo · 2007. Jún. 18. (H), 00.37
Elvileg az sem mindegy, hogy a milyen típusú adatokat akarsz lekérdezni az adatbázisból. Én ezt szoktam betenni a lekérdezés elé:

$betukeszlet=mysqli_query($ossz, "set names latin2") or die(mysqli_error());

A ltin2-t át kellene írni a utf8_general_ci. Lehet, hogy úgy működik.
10

set names

rrd · 2007. Jún. 18. (H), 22.17
ezt elég egyszer kiadni a mysql kapcsolat felépülte után
mysql_query("SET NAMES utf8");