» »

Prikaz šumnikov z UTF-8 ?

Prikaz šumnikov z UTF-8 ?

Cokolesnik ::

Na strežniku, kjer gostim domeno, imajo v MySQL bazi definirano kodno tabelo UTF-8_UNICODE_CI in slednjo sem tudi vklopil pri vseh tabelah oz. poljih, tako da s vnosom / prikazovanjem podatkov s šumniki v okviru aplikacije Phpmyadmin nimam težav.

Je pa problem pri izpisovanju šumnikov na sami spletni strani, ki črpa podatke iz omenjene baze, kar zgleda nekako takole (poglejte besedo Gub?eva namesto pričakovane Gubčeva).

V "meta" ukazih definiram charset takole:
meta http-equiv="content-type" content="text/html; charset=utf-8"

Je pa res, da sem naredil en testni html (brez podatkov iz sql baze) in definiral zgornji charset ter vpisal enega od šumnikov (črko š) kot "..353". Zadeva je v tem primeru delovala ampak ali to pomeni da bi mogel v Phpmyadminu za vsak šumnik definirati omenjeno kombinacijo znakov ..xxx ? ( kombinacije znakov za šumnike)

Prosim za pomoč.
Uporabniki naj pred pisanjem sporočil uporabljajo iskalnik www.google.com.
Čokolešnik ne vsebuje nobenih aditivov, konzervansov ali umetnih barvil.

r5r ::

Kličeš pred črpanjem podatkov iz baze.

if (!mysql_query("SET NAMES 'utf8'")) {echo 'Napaka! (zahtevek za UTF8)';}
And it makes me wonder.

netanyahu ::

Je pa problem pri izpisovanju šumnikov na sami spletni strani, ki črpa podatke iz omenjene baze, kar zgleda nekako takole (poglejte besedo Gub?eva namesto pričakovane Gubčeva).

Z meta ukazom imaš nastavljeno, da je stran kodirana v UTF-8, v resnici pa so šumniki v Windows-1250. Poizkusi v browserju ročno prisilno nastaviti kodiranje, pa boš videl. Če so nizi s šumniki iz baze, potem niso kodirani v UTF-8, če pa so iz datoteke, pa uporabi urejevalnik ki omogoča urejanje UTF-8 datotek. Datoteko lahko tudi odpreš v hex-editorju pa preveriš koliko bajtov zasedejo šumniki.

Zgodovina sprememb…

mark-0 ::

Hmmm, če boš vnašal podatke direktno v bazo (npr. phpMyAdmin) potem zadeva ne bo delovala pravilno (sem se tud sam pred časom s tem kar nekaj časa za**baval, pa ni šlo - nikakor)... Izdelati sem moral spletni vnosni obrazec (form), s katerim sem potem vnesel vsebine - potem zadeva deluje...

Če imaš bazo že dokaj polno, potem lahko celotno bazo v phpMyAdmin-u eksportiraš, editiraš v nekem tekst ali web editorju (zelo dobro se obnese na UTF-8 nastavljen Dreamweaver) - in zamenjaš znakce s Search&Replace - seveda najprej izbereš znak, kjer bi moral biti šumnik, ga kopiraš, poženeš Search&Replace, prilepiš tisto grabljico (kopiran znak) v Find, v Replace pa daš html kodo - npr. š ... Potem datoteko shraniš in s phpMyAdminom naložiš nazaj v bazo.
V vsakem primeru pri takih posegih priporočljivo imeti izdelan kak backup baze - za vsak primer, če zadeva ne bi šla skozi...
...computer junkie...

mark-0 ::

netanyahu: Hmmm, to ni čisto res... Kodna tabela je že prava... Zapis v bazi ni pravi, ker je bil kot kaže narejen direktno s phpMyAdminom... To kar priporočaš ti sicer deluje za č in š, vendar pa potem ne vidimo ž-jev... Res je zadeva malce čudna ampak tako je...
...computer junkie...

Cokolesnik ::

Težavo sem rešil tako, da sem vse statične html dokumente (šumnike v njih, ki so bili napisani v 1250 kodni tabeli) pretvoril takole:

windows-1250 -> iso-8859-2
š đ č ć ž Š Đ Č Ć Ž
ą đ č ć ľ © Đ Č Ć ®

vir:
http://www.motobit.com/util/charset-cod...

Za charset sem v meta tagu definiral ISO-8859-2, v Phpmyadminu pa imam vse kodne tabele nastavljeno na UFT-8_UNICODE_CI (tudi v Phpmyadminu se lepo izpisujejo šumniki).

No, tako šumniki delajo - verjetno velja za vse, ki gostujete pri Amis-u.
Uporabniki naj pred pisanjem sporočil uporabljajo iskalnik www.google.com.
Čokolešnik ne vsebuje nobenih aditivov, konzervansov ali umetnih barvil.

Zgodovina sprememb…

krho ::

?!
Cokolesnik, zakaj v 8859-2, če imaš bazo v utf-8?
Matr ej teli ponudniki nimajo blage:\
si.Mail odprto-kodni odjemalec elektronske pošte. - http://www.simail.si
Uredite si svojo zbirko filmov, serij in iger - http://xcollect.sf.net

kopriva ::

r5r-ov odgovor si poglej!

Js sem mel identične težave že na dveh različnih bazah in sem na identičen način rešil zadevo kot jo rešuje r5r ...

SET names 'utf8' >> tole daj v query pred tistim queryjem, ki ti potem pobere zadeve iz baze ...

Pač, poglej si r5r-ov odgovor - tam je rešitev!

Person ::

Jp, poskusi s tem:

// UTF8
mysql_query("SET NAMES 'UTF8'");
mysql_query("SET CHARACTER SET 'UTF8'");


Men je s tem v glavnem uspelo prepričat en pretvornik forumov, da mi je lepo upošetavl šumnike, ki sem jih imel v neki windows-1250 kodni tabeli in sem jih prenesel v nov forum z UTF-8 kodno tabelo;)

Nisem še uspel preveriti oz. prebrati dokumentacije, če sta obe vrstici nujno potrebni.
Let's make something useful!

Zgodovina sprememb…

  • spremenil: Person ()


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

Šumniki v php-ju

Oddelek: Izdelava spletišč
214740 (3243) JoSmo
»

Šumniki in MySql

Oddelek: Izdelava spletišč
196657 (6194) SPEEEED
»

Kako dobit šumnik iz baze

Oddelek: Izdelava spletišč
82790 (2648) MRB0rYS
»

[mySql] šumniki - večni problem

Oddelek: Izdelava spletišč
84228 (4087) jvolk
»

MySQL in czs

Oddelek: Izdelava spletišč
423596 (2686) krho

Več podobnih tem