Gå til innhold

[løst] norske tegn fungerer ikke i database


Anbefalte innlegg

Skrevet (endret)

Hei!

Jeg sliter med å få norske tegn (æ,ø,å) til å funke når jeg kjører tekst gjennom database..Alle filene mine er lagret i UTF-8 encoding, så problemet skal ikke ligge der...

All tekst som skrives rett inn i filene er ok, men det som går gjennom databsene blir rart...

Endret av rønning
Videoannonse
Annonse
Gjest Slettet-rXRozPkg
Skrevet

Det kan jo da ha noe med at databasen f.eks. bruker latin1 som tegnsett, og da blir det krøll når du sender inn utf8.

Sjekk om dette er tilfellet, så blir det litt lettere å hjelpe.

 

Har du tilgang til databasen via PHP My Admin, MySQL Administrator eller tilsvarende, så er det enkelt å sjekke hva slags tegnsett som er i bruk på en enkelt tabell (det er viktig å sjekke en enkelt tabell, og ikke bare hva som er standard). Se etter "Collation" eller "Character Set", dette kan f.eks. være satt til "latin1_danish_ci" eller "latin1_swedish_ci".

Skrevet (endret)

tegnsettet som er brukt både på tabellen og hver enkelt kolonne er utf_general_ci (eller noe sånt)

 

EDIT: av rønning på annen maskin

Endret av TehMaxIce
Skrevet

Dette står i PHPMy Admin:

 

MySQL-tegnsett: UTF-8 Unicode (utf8)

Kollasjon av MySQL-oppkobling: utf8_unicode_ci

 

På alle tabellene-> sammenligning: utf8_general_ci

 

og alle feltene med tekst-> sammenligning: utf8_general_ci

 

ser ikke hva som kan være problemet....

Gjest Slettet-rXRozPkg
Skrevet (endret)

Et skudd i blinde: Hva er tegnsettet satt til i HTML-koden?

Jeg tenker da på dette her, som skal i <head>:

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

 

Hvis det ikke er satt noe, kanskje nettleseren bruker iso-8859-1 eller windows-1252 som standard, og dette fører til krøll.

Endret av Slettet-rXRozPkg
Gjest Slettet+142
Skrevet
Dette står i PHPMy Admin:

 

MySQL-tegnsett:  UTF-8 Unicode (utf8)

Kollasjon av MySQL-oppkobling: utf8_unicode_ci

 

På alle tabellene-> sammenligning: utf8_general_ci

 

og alle feltene med tekst-> sammenligning: utf8_general_ci

 

ser ikke hva som kan være problemet....

6860994[/snapback]

 

 

Et skudd i blinde: Hva er tegnsettet satt til i HTML-koden?

Jeg tenker da på dette her, som skal i <head>:

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

 

Hvis det ikke er satt noe, kanskje nettleseren bruker iso-8859-1 eller windows-1252 som standard, og dette fører til krøll.

6865468[/snapback]

eg har samme problemet, og eg bruker de innstillingene nevnt i de to quote'ne over..

 

får bare '?' istedenfør 'ø', 'æ', 'å' :(

Skrevet

Da var problemet løst. Til dere andre som sliter med samme problem:

 

sette følgende mysql-spørring før alle andre spørringer:

mysql_query("SET NAMES utf8");

Gjest Slettet+142
Skrevet

ka skjer då?

går det ikkje an å gjøre den permanent?

Skrevet (endret)
Jeg har mysql-funksjoner i en egen klasse, så gjennom den gjør jeg det automatisk hver gang jeg kjører en MySQL spørring.

6876816[/snapback]

Men det er jo fremdeles en veldig lang runde rundt grøten...

 

Hva med å heller bytte collation i tabellen? Mine tabeller er latin1_swedish_ci, og jeg har aldri hatt problemer med æøå.

 

PS: Husk backup først, mulig det blir krøll med tidligere data...

Endret av Lurifaksen

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...