Terps,
Kellään kokemusta, mistä Apachen asetuksista muutetaan ääkköset päälle defaultiksi, jotta selaajan ei tarvitsisi muuttaa selaimen asetuksista encodingia westerniksi nähdäkseen tekstin oikein?
AddLanguage kohtaan lisätty fi .fi ja default Caharacter Setting on UTF 8.
Eikös utf 8 juuri käännä ääkköset muiksi kirjaimiksi? ääkköset näkyy miten näkyy kun asetus on iso-8859-1.
"En ole varma puhunko oikeasta asiasta mutta silti puhun"
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 transitional//EN">
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<?php
printf("ääkkönen");
?>
</body>
</html>
tulostaa selaimeen:
?k??
Jos selaimesta vaihtaaa encoding -> Western, sivulla lukee ääkkönen.
Käsitykseni mukaan juuri UTF 8 kääntää, mutta voisiko olla jokin asetus, joka ajaa tämän yli?
Joskus kun olen tehnyt sivuja niin olen joutunut laittamaan otsikkotioetona tuon kirjaimistovalinnan että ääkköset toimisi oikein...
header("Content-type: text/html; charset=ISO-8859-1");
Jep. Tuo näytti toimivan, kun sen lisäsi ennen <HTML> tägejä. Merkillistä, kun html olevinaan tekee saman asian. Yritän silti kaivella tuolta Apachen määrittelyistä kohtaa, joka tekisi tämän määrittelyn itse automaattisesti, niin ei tarvitsisi lisätä tuota rimpsua joka sivulle.
Minäkin kokeilin tuota UTF-8:a, mutta taitaa olla niin, etteivät selaimet vielä tue Unicodea kunnolla. Kannattaa kokeilla tuon 8859-1:sen sijaan ISO-8859-15:ta, siinä pitäisi toimia ääkkösten sekä euromerkin.
Ja ääkköset näkyvät myös UTF:llä oikein jos ne merkitsee näin: ä ö å Ä Ö Å
Merkkikoodaus pitää toki ilmoittaa sen mikaan, mikä se oikeasti on, eikä sen mukaan, mikä yleensä on toiminut.
Nykyiset asetuksesi toimivat täysin oikein, jos data oikeasti on UTF-8:aa. Ilmeisesti se ei sitä kuitenkaan ole (ISO-8859-1:stä, tai windows-1252:sta kenties?), jolloin homma korjaantuu vaihtamalla tuo AddDefaultCharset.
suski78 kirjoitti:
Jep. Tuo näytti toimivan, kun sen lisäsi ennen <HTML> tägejä. Merkillistä, kun html olevinaan tekee saman asian.
HTTP-headeri ajaa tärkeydessä meta-tagin ohi. Meta-tagi on lähinnä sitä varten, kun HTTP-headereita ei ole saatavilla (tallennettua sivua katsotaan omalta kovolta).
Tempfile kirjoitti:
Minäkin kokeilin tuota UTF-8:a, mutta taitaa olla niin, etteivät selaimet vielä tue Unicodea kunnolla.
Kaikki kokeilemani Netscape 3:sta uudemmat ovat osanneet.
Et vaan osaa :)
Tempfile kirjoitti:
Kannattaa kokeilla tuon 8859-1:sen sijaan ISO-8859-15:ta, siinä pitäisi toimia ääkkösten sekä euromerkin.
ISO-8859-1:ssä tosiaan ei ole euromerkkiä. Entiteettinä (€) kirjoitettuna toimii siinäkin.
Pari esimerkkisivua:
http://pp.kpnet.fi/blaze/temp/charset/iso88591.
(data on oikeasti ISO-8859-1:tä, mutta headeri väittää sen olevan UTF-8:aa; ääkköset eivät toimi)
http://pp.kpnet.fi/blaze/temp/charset/utf8.php
(data on oikeasti UTF-8:aa, joksi headeritkin sitä väittävät; ääkköset toimivat)
Aihe on jo aika vanha, joten et voi enää vastata siihen.