..:: slovenska php stran ::..
uporabniško ime:
geslo:
- napiši
- arhiv
- sveže
- napiši
- arhiv
- Spletni ko...
- MySql Iska...
- Preprosta ...
- PHP - dina...
- Google - i...
- Števec obi...
- PHP - krat...
- PHP in MYS...
- mail skrip...
- prva stran
- izmenjava pasic
- pozabili geslo
Slo-comp
Pikslar.com
www.matjazev.net
slo-site.com
100si
stran: [1]
Ledo
član

št. sporočil: 59
datum: 14.03.2008 | čas: 01:07

Danes sem kar nekaj časa zapravil preden sem ugotovil da kar tako pa to nebo šlo.

php skripta katera vsebuje tudi nekaj html kode mislim da celo xhtml ima v head-u to:

<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />

Sam sem zamenjal z tem:

<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8"/>

In vse datoteke.php shranil preko notepada v UTF-8 format.

Šumniki seveda niso delovali in prav tako ne več skripta. Seveda če sploh ne gre za html kodo ugotavljam sedaj pa me zanima če imam prav?

PHP skript ne moremo kar tako kot html kode spremeniti iz ANSI v UTF-8 ali lahko?

Ker težava je da skripta ne deluje če naredim to kaj sem napisal.




Ledo
član

št. sporočil: 59
datum: 14.03.2008 | čas: 02:12

Popravek: Mysql baza je bila down zato skripta ni delovala. Sedaj šumniki delujejo.

Vseeno pa še me zanima če se php skripte iz ansi convertajo v UTF-8 ali to velja le za html kodo.




ace
član

št. sporočil: 1291
datum: 14.03.2008 | čas: 07:34

Ledo> sprobaj pa boš videl. Kot namig ti pa lahko povem, da se nobena stvar ne konverta sama od sebe.



[url=http://www.mp3.com.au/acecream]KLIK KLIK KLIK KLIK...[/url]
CWIZO
član


št. sporočil: 3291
datum: 14.03.2008 | čas: 08:11

Ledo oboje je tekstovna datoteka in the end, tako da...



.:3delavnica.com:.
Another day, another bug
bossek
član

št. sporočil: 1250
datum: 14.03.2008 | čas: 09:40

notepad doda BOM in ti lahko kreple session in ostala navlaka, ki pošilja header



Ledo
član

št. sporočil: 59
datum: 14.03.2008 | čas: 15:25

Da o tem BOM sem že včeraj nekaj bral. Samo kot začetniku je to vse tako težko mi čitljivo.

Težava je bila v tem da sem včeraj delal z notepad++.

ZELO SLABA IDEJA.

Nato sem stvari skonvertitral z windows notepad. Nato pa sem preizjkusil še PSpad.

Težav je v tem da če prav razumem convertiranje ni tako mehanična in enolična stvar?

A to pomeni da moram potem kaj ročno popravljati? Resnično berem na to temo dosti ampak skripta mi pošilja šumnike ampak deluje še vseeno ne tako kot treba. Na čase "zmrzne".  Zdaj pa nevem ali zaradi šumnikov v mysql bazi ali zaradi tega ker ni pravilno skonvertirana v UTF-8.

Če prav razumem se določeni TAG-i (značke) ne skonvertirajo pravilno? Ali sem mimo vsekal? Vem da je to vrjetno bolj zahtevna stvar in da se ne da na njo odgovoriti z 1 stavkom.

Ampak zanima me s čim vi konvertirate kodo. Ker nebi rad še ene kalvarije z notepad++ ponovil.





Ledo
član

št. sporočil: 59
datum: 14.03.2008 | čas: 16:10

Popravek:

Sedaj gledam v phpmyadmin:

Skripta ustvari 5 tabel v bazi katere imajo

Pravilo za razvrščanje znakov:   latin1_swedish_ci .

To če hočem uporabljati šumnike zagotovo ni dobro?







bossek
član

št. sporočil: 1250
datum: 14.03.2008 | čas: 16:24

kaj je potrebno pri utf8 skrbeti:
1. baza more bit utf8
2. datoteke morajo biti utf8
3. datoteke morajo biti zapisane brez BOM
4. po povezavi na bazo treba klicat mysql_query("set names utf-8");

če je vse to izpolnjeno naj bi delovalo ;)




Ledo
član

št. sporočil: 59
datum: 14.03.2008 | čas: 16:50

Hvala za odgovore se mi že svita malo.

Zdaj skripta eno od tabel v bazi ustvari z tem ukazom:

1.)
$query = "CREATE TABLE IF NOT EXISTS $table_list (id INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,email VARCHAR(100) NOT NULL DEFAULT '',time_added INTEGER UNSIGNED NOT NULL DEFAULT 0,PRIMARY KEY(id))";


Sedaj pa tukaj se ne nastavi charset koliko vidim zato se ustvari defolt charset. In tvoja točka 1 že pade v vodo saj baza ni v utf 8.

2.)

datoteke so v utf8.

3.)

če majo BOM še ne vem

4.)

To mislim da kliče mysql baze in piše in bere iz njih

$result = mysql_query($query) or di(sql_err_handler($query, mysql_error()));

Se pravi moram vse te stavke spremeniti v to:

mysql_query("set names utf-8")($query)

in mora izgledati tako:

$result = mysql_query("set names utf-8")($query) or die(sql_err_handler($query, mysql_error()));

Ali pa sem way off.

Pa še glede prve točke:

Bi to bilo ok:

[CHARACTER SET utf8] [COLLATE  slovenian_ci] in kam stisnem not?







Ledo
član

št. sporočil: 59
datum: 14.03.2008 | čas: 17:42

Popravek:

Točka 3.)

Ni BOM ker PSpad po defoltu naj nebi shranjeval   BOM v UTF8.

Zdaj ta lokalizacija skripte zna biti kar trd oreh ja. Bom še malo sprobaval pa da vidimo. Mislim da sem blizu.


sporočilo je spremenil Ledo [14.03.2008 ob 17:43]

Ledo
član

št. sporočil: 59
datum: 14.03.2008 | čas: 18:53

Še popravek točka 1:

Bazo sem ročno spremenil v UTF-8 ker preko kode (inštalacije) še ne znam.

Zanima me pa ali je bolje da uporabim utf 8 slovenian ali utf8 general.

Sedaj sem nastavil na general.




Ledo
član

št. sporočil: 59
datum: 14.03.2008 | čas: 22:53

Ne gre. Preprosto ali sem res taki noob da ne znam v utf-8 shraniti ali kaj je to.

Ali vseeno shrani PSpad z BOM kljub temu da naj nebi. Nimam več idej.

Skripta dela v originalu. Ampak ko shranem vse datoteke v UTF-8  in vstavim ustrezni meta tag in začnejo delati šumniki se pa začnejo pojavljati stvari kot so nepravilno branje .css datoteke in je vse že vizualno pokvarjeno ali pa skripta preprosto zmrzne, ko bi se naprimer moral loginat v admin account ali ob kakšnem redirectu.





Ledo
član

št. sporočil: 59
datum: 14.03.2008 | čas: 23:13

Se opravičujem da toliko poste nabijam ampak seveda je BOM kriv!!!

Sem zdaj šel v hex editorju gledati in kaj je na prvem mestu?

EF BB BF

Mam občutek da bodo sedaj zadeve stekle... Nevem le zakaj nabijajo toliko da znajo njihovi editorji shranjevati brez BOM če v praksi delajo kaj se jim zljubi.

Edit: pa še to vidim da sem sam kriv v PSpad da je mi BOM vsiljeval! Kalvarija kaj pa drugega.

Hvala za odgovore drugače ker mam občutek da bodo zadeve zdaj stekle kot podmazane.


sporočilo je spremenil Ledo [14.03.2008 ob 23:19]

Ledo
član

št. sporočil: 59
datum: 17.03.2008 | čas: 15:00

Še to me zanima. Kje se da pogledati če je datoteka shranjena v UTF-8? Obstaja kak način v windowsih da to preverim ali programček?

Sedaj ko jih shranjujem brez BOM sploh ne vem kako to preveriti.




Roky
član

št. sporočil: 518
datum: 18.03.2008 | čas: 12:45

Živjo

Za PHP ti bo defenetivno Zend Studio 5.5 ali Eclipse prišel prav, saj ponuja v options možnost encoding, s katerim določaš ali je v UTF-8 ali ne. Glede baze je boljše utf8_slovenian_ci, saj ti bo ORDER BY pravilno šumnike sortiral.

Ko konvertiraš podatke moraš tudi podatke že v obstoječi bazi konvertirat, ter povezavo katero uporablja PHP do MySQL imeti v UTF-8. Nekaj splošnih naptkov laho najdeš tukaj:

http://trsplet.com/blog/2008/03/03/utf-8-tabele-vendar-latin1-podatki-ter-povezava/




http://trsplet.com || http://fri.trsplet.com || http://trsplet.com/blog/ .::. blog o spletu ||
stran: [1]
stran je še vedno v izdelavi zato nekatere stvari manjkajo oz. niso dokončane
forum -
teme zadnjih 24h -
iskanje -
statistika -
pravila -
Ali ste veseli nove ankete?

Itak!
Ne!
Anketa?

0.0129849910736
Število obiskov od 19.julija 2002: 1.271.254
php-si.com ne odgovarja za prispevke članov.
Copyright © 2002 php-si.com. Vse pravice pridržane