|
| Konvertering af danske tegn Fra : Jasm |
Dato : 15-01-03 12:58 |
|
Er der nogen der har lavet en funktion eller har kendskab til en indbygget
metode som gør det nemt at konvertere danske tegn i en tekst til koden for
det pågældende tegn. Det vil sige "æ" bliver til "æ" etc. Det skal
bruges når en bruger indtaster noget som jeg så skal indsætte i en
MySQL-database.
/Jasm
| |
Lars Dybdahl (15-01-2003)
| Kommentar Fra : Lars Dybdahl |
Dato : 15-01-03 13:11 |
|
Benyt htmlentities() til dette.
Vær dog opmærksom på, at denne funktion kun kan bruges med iso8859-1
tegnsættet, og at mange Linux maskiner nu kører utf-8 tegnsættet i stedet.
Hilsen,
Lars.
--
Freelance programmør
Programmering mod timebetaling
| |
Peter Brodersen (15-01-2003)
| Kommentar Fra : Peter Brodersen |
Dato : 15-01-03 13:11 |
|
On Wed, 15 Jan 2003 12:57:38 +0100, "Jasm"
<jacobstampe@vip.cybercity.dk> wrote:
>Er der nogen der har lavet en funktion eller har kendskab til en indbygget
>metode som gør det nemt at konvertere danske tegn i en tekst til koden for
>det pågældende tegn. Det vil sige "æ" bliver til "æ" etc. Det skal
>bruges når en bruger indtaster noget som jeg så skal indsætte i en
>MySQL-database.
Funktionen htmlentities() kan gøre det for dig.
Men hvorfor er det vigtigt for dig at konvertere fx "æ" til "æ"?
Både HTML og MySQL kan klare æøå uden problemer. Faktisk vil det også
være lettere fx at søge i på den måde.
--
- Peter Brodersen
| |
Larz (15-01-2003)
| Kommentar Fra : Larz |
Dato : 15-01-03 13:17 |
|
"Peter Brodersen" <usenet@ter.dk> wrote in message
news:b03j74$6ci$1@dknews.tiscali.dk...
> >Er der nogen der har lavet en funktion eller har kendskab til en
indbygget
> >metode som gør det nemt at konvertere danske tegn i en tekst til koden
for
> >det pågældende tegn. Det vil sige "æ" bliver til "æ" etc. Det skal
> >bruges når en bruger indtaster noget som jeg så skal indsætte i en
> >MySQL-database.
>
> Funktionen htmlentities() kan gøre det for dig.
>
> Men hvorfor er det vigtigt for dig at konvertere fx "æ" til "æ"?
> Både HTML og MySQL kan klare æøå uden problemer. Faktisk vil det også
> være lettere fx at søge i på den måde.
Nemlig! Du skal blot huske i din HTML "head" sektion at tilføje noget i stil
med:
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
Så vil det altid se lækkert ud :)
-
Lars
http://coder.dk/sohofaq.php - Uofficiel WOL SOHO 77 FAQ
To mail me remove your pants.
| |
Peter Brodersen (15-01-2003)
| Kommentar Fra : Peter Brodersen |
Dato : 15-01-03 14:07 |
|
On Wed, 15 Jan 2003 13:16:31 +0100, "Larz" <lp@your-pants-coder.dk>
wrote:
>Nemlig! Du skal blot huske i din HTML "head" sektion at tilføje noget i stil
>med:
>
><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
>
>Så vil det altid se lækkert ud :)
Nyere Apache'r tager det endda allerede med i Content-Type'n i
HTTP-headeren:
Content-Type: text/html; charset=iso-8859-1
Det kan dog stadigvæk være praktisk nok at have det med i HTML-filen,
såfremt den bliver kopieret rundt uden at charset-informationen fra
headeren bliver medtaget.
--
- Peter Brodersen
| |
Jesper Brunholm (15-01-2003)
| Kommentar Fra : Jesper Brunholm |
Dato : 15-01-03 14:55 |
|
Peter Brodersen wrote:
>><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
>>
>>Så vil det altid se lækkert ud :)
> Nyere Apache'r tager det endda allerede med i Content-Type'n i
> HTTP-headeren:
> Content-Type: text/html; charset=iso-8859-1
>
> Det kan dog stadigvæk være praktisk nok at have det med i HTML-filen,
> såfremt den bliver kopieret rundt uden at charset-informationen fra
> headeren bliver medtaget.
det vil også øge sidernes portabilitet - in case de skulle havne på en
af de _mange_ servere som tror, og deklarerer at alting er utf-8, så vi
får spøjse tegn ind i mozilla på hver 3. hjemmeside
mvh
Jesper Brunholm
--
H.C. Andersen-Centret med nyt design: < http://www.andersen.sdu.dk/>
Phønix - dansk folk-musik fra unge musikere - < http://www.phonixfolk.dk/>
| |
Peter Brodersen (16-01-2003)
| Kommentar Fra : Peter Brodersen |
Dato : 16-01-03 04:55 |
|
On Wed, 15 Jan 2003 14:55:02 +0100, Jesper Brunholm
<nospam@brunholm-scharff.dk> wrote:
>det vil også øge sidernes portabilitet - in case de skulle havne på en
>af de _mange_ servere som tror, og deklarerer at alting er utf-8, så vi
>får spøjse tegn ind i mozilla på hver 3. hjemmeside
Jeg har oplevet situationen i mozilla en del gange, men er det ikke
kun i de tilfælde, hvor der ikke bliver angivet noget charset fra
serverens side, at mozilla så går ud fra at webserveren sender i
utf-8?
Jeg kan ikke umiddelbart erindre at jeg er faldet over servere, der
spytter utf-8 ud som charset. Ikke at det ikke er sket; jeg må
indrømme, at jeg ikke tjekker http-headers på samtlige servere, jeg
besøger :)
Jeg vil prøve at se om situationen kan reproduceres...
--
- Peter Brodersen
| |
Lars Dybdahl (16-01-2003)
| Kommentar Fra : Lars Dybdahl |
Dato : 16-01-03 12:29 |
|
Hvis I har brug for en side, der kører utf-8, så har I en i
http://igang.dk/.
Problemet med tegnsæt havde Jyske Netbank. Hvis man tog et kontoudtog
(iso8859-1 tegnsæt) og sendte den til en Red Hat 8.0 bruger med standard
dansk eller engelsk opsætning, så kører denne Linux utf-8 og prøvede så at
læse Jyske Netbanks side som var det utf-8, hvorved æøå forsvandt.
Jeg har for en uges tid siden meddelt dette til dem, og de ville tilføje
tegnsæt-headeren snarest muligt, så muligvis er det allerede rettet.
Hilsen,
Lars.
--
Peter Brodersen wrote:
>>det vil også øge sidernes portabilitet - in case de skulle havne på en
>>af de _mange_ servere som tror, og deklarerer at alting er utf-8, så vi
>>får spøjse tegn ind i mozilla på hver 3. hjemmeside
>
> Jeg har oplevet situationen i mozilla en del gange, men er det ikke
> kun i de tilfælde, hvor der ikke bliver angivet noget charset fra
> serverens side, at mozilla så går ud fra at webserveren sender i
> utf-8?
>
> Jeg kan ikke umiddelbart erindre at jeg er faldet over servere, der
> spytter utf-8 ud som charset. Ikke at det ikke er sket; jeg må
> indrømme, at jeg ikke tjekker http-headers på samtlige servere, jeg
> besøger :)
| |
Lars Axberg (16-01-2003)
| Kommentar Fra : Lars Axberg |
Dato : 16-01-03 06:11 |
|
"Peter Brodersen" <usenet@ter.dk> wrote in message
news:b03mf4$6js$2@dknews.tiscali.dk...
> On Wed, 15 Jan 2003 13:16:31 +0100, "Larz" <lp@your-pants-coder.dk>
huske i din HTML "head" sektion at tilføje noget i stil
> >med:
> >
> ><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
> >Så vil det altid se lækkert ud :)
Nyere Apache'r tager det endda allerede med i Content-Type'n i
HTTP-headeren:
Hmm... Det kan godt være, at det er mig den er gal med, men situationen er,
at jeg sad i samme knibe som posteren af denne "streng". Hos mig er
situationen, at PHP ikke forstår dk tegn! Mysql skriver dem som æøå men når
det bliver spyttet ud igen på siden bliver det til mærkelige tegn! Har også
prøvet at følge ovenstående råd, men til ingen nytte! Hvad gør man?
-----------
Lars Axberg
| |
Peter Brodersen (16-01-2003)
| Kommentar Fra : Peter Brodersen |
Dato : 16-01-03 06:37 |
|
On Thu, 16 Jan 2003 06:11:05 +0100, "Lars Axberg" <axberg@person.dk>
wrote:
>Har også prøvet at følge ovenstående råd, men til ingen nytte! Hvad gør man?
Har du en URL til en webside, der driller, så vi andre kan se
outputtet?
--
- Peter Brodersen
| |
Lars Axberg (17-01-2003)
| Kommentar Fra : Lars Axberg |
Dato : 17-01-03 07:30 |
|
"Peter Brodersen" <usenet@ter.dk> wrote in message
news:b05gef$b11$1@dknews.tiscali.dk...
> Har du en URL til en webside, der driller, så vi andre kan se
> outputtet?
Desværre ikke en URL endnu, men sagen er den, at jeg har tilføjet <meta
http-equiv="content-type" content="text/html"; charset="ISO-8859-1"> i min
html header og det burde jo resultere i dk tegn ikke? Når jeg kigger i
PHPmyAdmin og ser indholdet i tabellerne så viser den godtnok æø og å som de
skal være! Men når de kommer ud på siden vises f.eks øl som rl !!!
Det er jo ikke fair over for denne drik! ? Er der nogle "regional settings"
i PHP som jeg har overset? Og burde det ikke være ligemeget når jeg har
ovenstående i headeren?
---------
Lars Axberg
Hmmm.... It's a strange world!
| |
Lars Dybdahl (17-01-2003)
| Kommentar Fra : Lars Dybdahl |
Dato : 17-01-03 10:18 |
|
Hvilket tegnsæt kører du i din Linux? Bruger du Red Hat 8.0 med standard
opsætning? I så fald er tegnsættet ikke iso 8859-1, men utf-8... det ville
forklare en del. Selve php har ikke nogen sprogopsætning, men det har
webserveren, idet den bruger maskinens standardtegnsæt.
Vær også opmærksom på, at webserveren sender et tegnsæt ud over det, du
skriver inde i html-koden. Hvis du ikke bryder dig om webserveren
opsætning, så sæt denne header selv:
Header ("Content-Type: text/html; charset=utf-8");
Eller iso-88591-1, hvis det er det, du vil sende. Jeg vil kraftigt anbefale,
at du bruger samme tegnsæt over det hele, samt at du bruger
htmlspecialchars() i stedet for htmlentities(). På den måde vil din
webløsning køre iso8859-1 på nogle computere og utf-8 på andre. utf-8 er i
øvrigt ret fedt, f.eks. kan man skrive 5 ohm med rigtigt ohm-tegn: 5 Ω, du
kan citere fransk, russisk, græsk osv. med alle deres tegn: "sœur",
"ТекущаÑ", "εφημεÏί" og man kan ogsÃ¥ diskutere DOS ting med DOS tegn:
"â•â•‚╃╄╅╆╇╈░▒▓". Ikke at et forum har brug for det, men hvis det skal bruges
international, så er det da fedt, når det bare virker.
Lars.
Lars Axberg wrote:
> Desværre ikke en URL endnu, men sagen er den, at jeg har tilføjet <meta
> http-equiv="content-type" content="text/html"; charset="ISO-8859-1"> i min
> html header og det burde jo resultere i dk tegn ikke? NÃ¥r jeg kigger i
> PHPmyAdmin og ser indholdet i tabellerne så viser den godtnok æø og å som
> de skal være! Men når de kommer ud på siden vises f.eks øl som rl !!!
>
> Det er jo ikke fair over for denne drik! ? Er der nogle "regional
> settings" i PHP som jeg har overset? Og burde det ikke være ligemeget når
> jeg har ovenstående i headeren?
>
> ---------
>
> Lars Axberg
> Hmmm.... It's a strange world!
--
Freelance programmør
Programmering mod timebetaling
| |
|
|