Avatar billede xizang Nybegynder
10. december 2007 - 19:38 Der er 4 kommentarer

Få apache til at læse PHP som UTF-8 og ikke iso-8859-1

Hej eksperter

Som PHP nybegynder har jeg følgende problem:

Jeg vil gerne køre et PHP billedgalleri, som er kodet i UTF-8, men min server (apache) læser alle PHPfiler som iso-8859-1, hvilket  betyder at jeg ikke får vist bogstaverne ÆØÅ korrekt

Jeg tror dette er problemet, da Jeg har prøvet at åbne en UTF-8 kodet php-fil i min texteditor og gemt den kodet som iso-8859-1, hvilket får problemet til at forsvinde og ÆØÅ vises korekt. 

Det jeg gerne vil er at få serveren til at automatisk åbne alle PHP filer som UFT-8, da det betyder at jeg ikke behøver at skulle ændre kodningen i de enkelte PHPfiler til iso-8859-1

Jeg har prøvet at oprette en .htacces fil forsøgt mig med følgende:
AddType 'text/html; charset=UTF-8' .php      -> Resultat = Jeg kan ikke se indholdet på siden :(
AddCharset UTF-8 .php                                      -> Resultat = Ingen effekt :(
AddDefaultCharset UTF-8                                  -> Resultat = Ingen effekt :(

I kan se info om PHP indstillinger her..
http://www.komogdansholstebro.dk/ungdom/jpserver/web/php/info.php


Jeg er som sagt nybegynder på dette område så i må endeligt skrive hvis der er yderligere information i skal bruge for at kunne hjælpe :)

På forhånd mange tak
Avatar billede henninghabor Nybegynder
11. december 2007 - 10:46 #1
Denne linie skal indsættes i toppen af din php-fil:

header("content-type: text/html; charset=iso-8859-1");
Avatar billede xizang Nybegynder
11. december 2007 - 11:18 #2
Jeg vil hellere lave sådan at serveren at læse filerne som UTF-8, hvis det kan lade sig gøre ??

Prøv at se på det nedenstående link..

http://web-sniffer.net/?url=http%3A%2F%2Fwww.komogdansholstebro.dk%2Fungdom%2Fjpserver%2Fweb%2Fdefault%2Findex.php&submit=Submit&http=1.1&gzip=yes&type=GET&uak=0

Her står der :
<head>
    <meta http-equiv="content-type" content="text/html;charset=UTF-8">

Men alligevel står der i info om siden at : contenttype = text/html; charset=iso-8859-1   

Serveren må på en eller anden måde overskrive denne header.. Kan man ikke få serveren til at læse alle PHPfiler som UTF-8 som default ??
Avatar billede xizang Nybegynder
14. december 2007 - 23:33 #3
Problemet ligger ikke i den kode, der står inde i selve PHPfilen..

Problemet er at selve filen bliver kodet i som UTF-8

Jeg har lagt to filer op med 100% ens indhold her:

Eksempel 1:  http://www.komogdansholstebro.dk/charset/isogemtsomiso.php
Eksempel 2:  http://www.komogdansholstebro.dk/charset/isogemtsomutf.php

Eksempel 1 er "gemt" som en Iso fil, mens eksempel 2 er "gemt" som UTF-8

Som du kan se kan serveren ikke finde ud af at læse eksempel 2 selvom indholdet er identisk.

Jeg vil gerne have serveren til at kunne læse mine PHP filer selvom de er "kodet/gemt" som UFT-8, hvis det på en eller anden måde kan lade sig gøre at ændre det?
Avatar billede henninghabor Nybegynder
15. december 2007 - 00:28 #4
Jeg ved ikke hvordan du gør dette. :(
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester