Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
(Resolved) tegn (char) problemer
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Scandinavian
View previous topic :: View next topic  
Author Message
andip
Tux's lil' helper
Tux's lil' helper


Joined: 18 Jun 2002
Posts: 116
Location: .no

PostPosted: Mon Aug 31, 2009 8:07 am    Post subject: (Resolved) tegn (char) problemer Reply with quote

Heisan,

Jeg har for litt siden installert(?) noe som heter ipplan. Det er en php-frontend til web-server som passer på ip-adresser, samt et par andre funksjoner.

Jeg prøver å "importere" ip-data fra en excel regneark, inn i denne php-frontend, men har problemer med norske tegn (æøå). Jeg editerer og sorterer og litt sånt i excel, før jeg lagrer det hele som en <TAB>-delimert text-fil, som så importeres inn i denne php-tingen, som bruker mysql databaser for å lagre.

Alt ser fint ut i excel, og etter lagring så ser alt også finfint ut dersom jeg ser på text-fila med "more", eller open office spreadsheet. Om jeg ser på fila med "less", så ser det helt galt ut. Eksempler :
More : Østgård skole
Less : <D8>stg<E5>rd skole

Når jeg importerer textfila til mysql-basen/php-frontend, så forsvinner bare alt bak første spesial-tegn. Så "Østgård skole" som vist ovenfor blir bare borte, mens "Brårud skole" blir bare "Br".

Er det noen som har en anelse om hva som kan være galt, og hva jeg evt. kan gjøre for å rette opp i problemet?


Last edited by andip on Wed Sep 02, 2009 6:49 am; edited 1 time in total
Back to top
View user's profile Send private message
creideiki
n00b
n00b


Joined: 19 Feb 2003
Posts: 61
Location: Linköping, Sweden

PostPosted: Mon Aug 31, 2009 6:48 pm    Post subject: Re: tegn (char) problemer Reply with quote

andip wrote:
Alt ser fint ut i excel, og etter lagring så ser alt også finfint ut dersom jeg ser på text-fila med "more", eller open office spreadsheet. Om jeg ser på fila med "less", så ser det helt galt ut. Eksempler :
More : Østgård skole
Less : <D8>stg<E5>rd skole

Når jeg importerer textfila til mysql-basen/php-frontend, så forsvinner bare alt bak første spesial-tegn. Så "Østgård skole" som vist ovenfor blir bare borte, mens "Brårud skole" blir bare "Br".

Det där är klassiska tecken på att programmen och texten använder olika teckenkodningar. Pröva:
Code:
env LC_CTYPE=nb_NO less $FIL
eller
Code:
env LC_CTYPE=nn_NO less $FIL
(tyvärr kan jag inte skillnaden mellan bokmål och nynorsk, så jag vet inte om det blir olika resultat)

Om någon av dem fungerar och du sedan byter ut LC_CTYPE globalt (se Gentoo Linux Localization Guide, särskilt kodlistning 3.1 och 3.4) och startar om databasen och webservern skall det nog gå bättre. Såvida inte det även är problem med hur MySQL skickar eller lagrar datat. Det är svart magi.

Lämplig läsning är "man locale", som säger:
Code:
       LC_CTYPE
              Determine  the locale for the interpretation of sequences of bytes of text data
              as characters (for example, single-byte as opposed to multi-byte characters  in
              arguments and input files).
Med LC_CTYPE satt till något som använder US-ASCII (t.ex. "C" eller "POSIX") så anses att bytevärdet 0xD8 inte är ett tecken, och då blir det trasigt. Med LC_CTYPE satt till något som använder ISO 8859-1 (t.ex. "nb_NO" eller "nn_NO", eller t.o.m. "en_US") så representerar bytevärdet 0xD8 plötsligt tecknet "Ø" och allt blir bra.
Back to top
View user's profile Send private message
andip
Tux's lil' helper
Tux's lil' helper


Joined: 18 Jun 2002
Posts: 116
Location: .no

PostPosted: Tue Sep 01, 2009 7:37 am    Post subject: Reply with quote

hei, og takker for godt svar.

Jeg har kommet et stykke på vei. det vil si, alle tegn ser bra ut med less også nå, men min import går fortsatt galt. jeg har restartet apache og mysql, men vet ikke om kanskje php har noen innvirkning her.
skal sjekke direkte i databasen for å se hva som er lagret der. forhåpentligvis så ser jeg æøå der, men ikke via web-frontend.

igjen, takk for raskt og informativt svar.
Back to top
View user's profile Send private message
creideiki
n00b
n00b


Joined: 19 Feb 2003
Posts: 61
Location: Linköping, Sweden

PostPosted: Tue Sep 01, 2009 6:16 pm    Post subject: Reply with quote

Det skulle kunna vara så att importen inte tycker om text kodad med ISO 8859-1 alls. Du skulle kunna pröva att köra den genom iconv först, t.ex. så här för att konvertera den till UTF-8:
Code:
iconv -f LATIN1 -t UTF-8 < $FIL > $FIL.utf8
Back to top
View user's profile Send private message
andip
Tux's lil' helper
Tux's lil' helper


Joined: 18 Jun 2002
Posts: 116
Location: .no

PostPosted: Wed Sep 02, 2009 6:48 am    Post subject: Reply with quote

ja, fant ut av det etterhvert igår ;)
mye frem og tilbake med default char-set i mysql og php. frem og tilbake med excel, word, openoffice, for å få lagret dokumentet med utf-8. fant frem til iconv, og mine problemer var over :)

takker og bukker for hjelpen.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Scandinavian All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum