MySQL, nasa slova

poruka: 5
|
čitano: 16.688
|
moderatori: Lazarus Long, XXX-Man, vincimus
1
+/- sve poruke
ravni prikaz
starije poruke gore
15 godina
neaktivan
offline
MySQL, nasa slova
pitanje

MySQL je neka verzija 5...

O cemu se radi?

Moja stranica sa koje vrsim sadrzi ovaj meta tag:

 

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

 

baza je podesena na latin_swedish_ci.

Prilikom upisa u bazu ne upisuje nasa slova vec ćlžšÄ.

Do sada mi nije bilo bitno kako ih upisuje u bazu, već mi je bilo bitno kako ce ih prikazivati na stranicama, browsera. Na stranicama browsera prikaz nasih slova je OK.

Medjutim, sada mi je potrebno da se i u bazi slova upisuju normalno ć, č, đ, š, ž, a i da ih iscitava u browseru normalno.

Potrebno mi je jer mi je potreban export neke tabele u EXEL ili WORD dokument.

 
0 0 hvala 0
16 godina
offline
RE: MySQL, nasa slova

Exportati, konvertirati u UTF8_unicode_ci. Zatim srediti mysql i kreirati novu bazu s collation UTF8_unicode_ci (najjednostavnije u my.cnf filu to upisati i onda kada kreiraš novu bazu izabereš taj charset).


Konvertirati možeš i preko linuxa i to s komandom "iconv -flatin1 -tutf8 -onovo_ime_fajla_utf8 ime_fajla_kojeg_konvertiram" .


Nakon toga importaš te konvertirane sql filove u bazu i to je to.


Radio mnogo puta iz konvertiranje iz njemačkih umlauta u utf8 da se mogu i hr znakovi ok zapisivati i vidjeti.


Obrati još samo pozornost da moraš podesiti web da radi na UTF8 jer možda neki browser, koji neće biti na auto postavkama neće ok prokazati hr slova.

15 godina
neaktivan
offline
MySQL, nasa slova
autorov komentar
prihvaćeno rješenje

Hvala na odgovoru!

Primenio sam UTF8_unicode_ci i resio sam problem.

Nisam shvatio za ovaj fajl my.cnf, gde u njemu da upisem?

Kad kreiram rucno ili preko PHP?

Evo kako sam ja resio:

U okviru web strane mi stoji:

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

 

Bazu i tabele kreiram iz php fajla pomocu upita:

$db_host="localhost";
   $db_user="root";
   $db_password="root";
   $db_name="baza";

$connection = mysql_connect("$db_host", "$db_user", "$db_password") or die(mysql_error());

pravi bazu:

mysql_query("CREATE DATABASE IF NOT EXISTS $db_name COLLATE=utf8_unicode_ci",$connection)

 

mysql_select_db("$db_name",$connection) or die(mysql_error());

pravi tabelu:

mysql_query("
CREATE TABLE IF NOT EXISTS `naziv_tabele` (
  `id` int(11) NOT NULL auto_increment,
  `ime` varchar(15) NOT NULL,
  PRIMARY KEY  (`id`),
  UNIQUE KEY `ime` (`ime`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=1;
");

ova zadnja tri reda inace stoje i u PHP fajlu za konekciju prilikom citanja baze:

mysql_query("SET NAMES utf8");
mysql_query("SET CHARACTER SET utf8");
mysql_query("SET COLLATION_CONNECTION='utf8_unicode_ci'");

 

 

 
0 0 hvala 0
16 godina
offline
RE: MySQL, nasa slova

sorry dugo nisam bio na forumu... poslovni put...

 

ako si stavio kolaciju u php (a napisao si da jesi) - mysql_query("SET COLLATION_CONNECTION='utf8_unicode_ci'");

sve bi te se sada trebalo ok prikazivati i u bazi i na webu...

 

pozz

12 godina
neaktivan
offline
RE: MySQL, nasa slova

Da. Ali kad gledam u tabeli u bazi ne stoje naši znakovi.

 

Koristim MySQLi sintaksu za konekciju na bazu. Može li to biti problem i ako jeste kako onda da upišem ovu liniju koda u MySQLi sintaksi?

http://www.webmarketing-design.rs.ba | www.edukativni.info
1
Nova poruka
E-mail:
Lozinka:
 
vrh stranice