PHP & MSSQL problem

poruka: 6
|
čitano: 4.043
|
moderatori: Lazarus Long, XXX-Man, vincimus
1
+/- sve poruke
ravni prikaz
starije poruke gore
17 godina
neaktivan
offline
PHP & MSSQL problem
pitanje

Pozdrav ljudi,

 

Ima li netko rješenje kako ubaciti hrvatske znakove "čćšđž" u MSSQL???

 

Napisao sam PHP skriptu za ubacivanje podataka u MSSQL koju sam formatirao kao UTF-8 i u MSSQL sam collation postavio na Croatian_CI_AI i ne radi mi ubacivanje hrvatskih znakova. Umjesto "čćšđž" dobijem neku hrpu gluposti u bazi. Ukoliko se netko već susreo sa ovakovom vrstom problema ili me može uputiti u pravom smjeru bio bih mu zahvalan. Već sam pisao na nekoliko foruma i nitko nije znao rješenje za to. Trenutno, kao privremeno rješenje, koristim konvertiranje stringova iz "čćšđž" u "ccsdz".

 

Dali postoje neki zamjenski znakovi, koje bi MSSQL mogao shvatiti kao "čćšđž"???

 

Unaprijed hvala.

 
0 0 hvala 0
17 godina
offline
PHP & MSSQL problem

MSSQL je na windowsima, a widnowsi po defaultu koriste lokalizirani charset, a to je CP1250 (iliti Windows-1250).

Probaj konvertirati u taj charset prije inserta. A poslje selecta vratiš nazad u UTF-8.


Druga solucija ti je da na samoj MSSQL bazi namjestiš UTF-8 encoding i onda ti neće trebati konverzije.

Moj PC  
0 0 hvala 0
17 godina
offline
PHP & MSSQL problem

MSSQL baza nema UTF8 format. Umjesto text i nchar(x) koristi nvarchar tip podataka jer ti on za jedno slovo koristi 2 byta. Znaci ako imas polje nvarchar(512) onda ti je zapravo duljina polja 256 znakova, odnosno 512 bita.

 

Maksimalan broj znakova je 2000. Text tip podataka je specifican jer se sprema kao stream, ne dopusta sortiranje etc etc. Samo sva nchar polja i text polja prebaci u nvarchar polja i sljakat ce.

I'm going woo woo
 
0 0 hvala 0
17 godina
neaktivan
offline
PHP & MSSQL problem
autorov komentar

Sva polja su postavljena kao nvarchar!

 

Pokušao sam formatirati sve unose kao WIN 1250, ali ni to nije funkcioniralo.

 

Naime, formatiranje koje sam koristio je sljedeće:

<meta http-equiv="Content-Type" content="text/html; charset=windows-1250">

 

Dali to odgovara za MSSQL ili treba nešto drugo napraviti??

 

 

 
0 0 hvala 0
17 godina
offline
PHP & MSSQL problem

Pa encoding moras postaviti u UTF8, ne u 1250. U tome ti je problem najvjerovatnije, meni je na MSSQL encoding po defaultu, web mi radi na UTF8 encodingu, sve sljaka bez problema i dodatnih tweakova...

 

Izbrisi postojece podatke i pokusaj ponovo unijeti...

 

Kod konverzije izmedju tipova mozda se nesto zbuckalo.

I'm going woo woo
 
0 0 hvala 0
17 godina
neaktivan
offline
PHP & MSSQL problem
autorov komentar
prihvaćeno rješenje

OK, Hvala!

 

Pokušati ću ponovno sa UTF-8, pa ću vidjeti što se događa!

 
0 0 hvala 0
1
Nova poruka
E-mail:
Lozinka:
 
vrh stranice