Avatar billede sbmoller Nybegynder
27. marts 2010 - 11:49 Der er 6 kommentarer og
1 løsning

Problemer med overførsel af æøå til database samt på serversiden (php)

Hej Eksperter,

Jeg er ved at bygge et site up med login, brugere, forum, nyhedsbreve osv. Jeg laver en del overførsel til database og udtræk fra database. Derudover laver jeg en masse fejltjek ved input i tekstbokse osv. der melder fejl hvis man ikke taster noget. Mit problem er at mange af fejlmeldingerne samt alt fra databasen viser mærkelige tegn hver gang et æøå bliver vist på siden.. jeg har været inde og læse om charset osv men kan ikke løse det. er der en guide til hvor man skal skrive hvad? og hvad med databasen - skal der gøres noget specielt i phpmyadmin?
Avatar billede arne_v Ekspert
27. marts 2010 - 15:14 #1
I teorien er det nemt. Man vælger enten UTF-8 eller ISO-8859-1 og så bruger man det konsekvent over det hele.

Praksis er lidt en anden sag, fordi nogen gange er det ikke helt åbenlyst hvilken encoding der bruges.
Avatar billede sbmoller Nybegynder
27. marts 2010 - 17:10 #2
se eksempelvis nedenstående kode fra en af mine sider.

Alt hvad der i mine include filer står med æøå kommer med nogle mærkelige tegn.

men skriver jeg æøå direkte i min "content" div er der ingen problemer, og jeg har jo som du kan se declared at jeg vil bruge "utf-8" nedenfor?

<?php
include("include/session.php");
$page = "userinfo.php";
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
    <meta http-equiv="content-type" content="text/html; charset=utf-8">
    <title></title>
    <link rel="stylesheet" href="-css/capstan_norm.css" type="text/css" />   
</head>
<body>
<div id="container">
    <div id="header"><?php include("include/sider/header.php");?></div>
    <div id="logged_in_bar"><?php include("include/sider/logged_in_bar.php");?></div>
    <div id="leftcol"><?php include("include/sider/leftcol.php");?></div>   
    <div id="content">
        <?php if($session->logged_in){?>

        <?php }else{ /* Ikke logget ind gør følgende*/ }?>
    </div>
    <div id="rightcol"><?php include("include/sider/rightcol.php");?></div>
    <div id="footer"><?php include("include/sider/footer.php");?></div>
</div>

</body>
</html>
Avatar billede arne_v Ekspert
27. marts 2010 - 17:33 #3
Dine sider fortæller ganske rigtigt browseren at indholdet er UTF-8.

Men er filernes faktisk indhold UTF-8?
Avatar billede sbmoller Nybegynder
28. marts 2010 - 10:45 #4
det ved jeg ikke, hvordan tjekker jeg det??
Avatar billede arne_v Ekspert
28. marts 2010 - 13:59 #5
En måde er at åbne en fil med ÆØÅ, gemmer den under et andet navn og eksplicit angive UTF-8 format. Hvis den nye fil er større end den gamle fil, så var den gamle fil ikke i UTF-8!
Avatar billede sbmoller Nybegynder
05. april 2010 - 10:55 #6
smid et svar - jeg har fundet ud af det :)
Avatar billede arne_v Ekspert
05. april 2010 - 15:09 #7
kommer her
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
Kategori
Kurser inden for grundlæggende programmering

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