Menar du att du har en massa ä och liknande som du vill göra om du "ä" och ha utf-8 som charset?
Någon form av "find & replace" behöver du väl i så fall. Vad använder du för program?
24 svar · 2 453 visningar · startad av Sasch
Uh, hur gör jag?
Kollar runt lite på webben men förstår inte så mycket då jag inte är php-kodare till naturen.
Problemet är att koda om alla åäö till dess motsvarighet i UTF-8 så att jag inte får massa "?" när jag parsar min string.
Exempeltext att parsa:
Detta är en inofficiell sida för oberoende återförsäljare i norden.
Menar du att du har en massa ä och liknande som du vill göra om du "ä" och ha utf-8 som charset?
Någon form av "find & replace" behöver du väl i så fall. Vad använder du för program?
Nej. Helt fel. Jag använder mig av WordPress och skulle behöva ha in en informationsruta (Som jag sätter direkt i koden (Om det nu är så smart egentligen får man ju diskutera eller ej).
När jag stoppar in strängen ovan på sidan så får jag en fruktansvärt mycket frågetecken som ersätter alla åäö (Eftersom UTF inte riktigt fungerar som iso-8859-1). Så mitt problem är väl snarare att konvertera strängen ovan till UTF-8 från iso-8850-1.
Om du nu har iso-8850-1 som charset i sidorna och inte vill jobba om hela sajten till utf-8 (vilket ju är att rekommendera), så byt ut å, ä och ö i den lilla rutan istället då:
å = å
ä = ä
ö = ö
Å = Å
Ä = Ä
Ö = Ö
Detta är en inofficiell sida för oberoende återförsäljare i norden, sörrö.
utf8_encode () ?
iconv("ISO-8859-1", "UTF-8", "Detta är en inofficiell sida för oberoende återförsäljare i norden.");
Möjligtvis?
Tack allihopa, varit så sönderstressad att jag inte hunnit svara på allt som kommer in, men tack igen alla. Det hela löste sig med mycket pill i språkinställningarna, tydligen så räcker det enbart att ställa om till svenska och skriva
echo "Detta är en inofficiell sida för oberoende återförsäljare i norden.";
Det räckte alltså inte med att ställa om allt till iso-8850-1 (eftersom sidan redan är i utf-8 och vända på kakan, göra allt till iso gör att all annan text blir koko). Lösning på topp!
Tack alla igen!
Sasch skrev:
Tack allihopa, varit så sönderstressad att jag inte hunnit svara på allt som kommer in, men tack igen alla. Det hela löste sig med mycket pill i språkinställningarna, tydligen så räcker det enbart att ställa om till svenska och skriva
echo "Detta är en inofficiell sida för oberoende återförsäljare i norden.";Det räckte alltså inte med att ställa om allt till iso-8850-1 (eftersom sidan redan är i utf-8 och vända på kakan, göra allt till iso gör att all annan text blir koko). Lösning på topp!
Tack alla igen!
Bra det löste sig.
Men du menar tvärtom, va: Just NU har sidorna iso-8850-1. Hade dom haft utf-8, så skulle du inte behövt skriva i ASCII (ä osv). I så fall kan du t.ex. ha laddat upp filerna felaktigt till servern.
Nej. Du har fel. Sidorna är i UTF-8:
<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="sv-SE">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
Sasch skrev:
Nej. Du har fel. Sidorna är i UTF-8:
<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="sv-SE"> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
Konstigt. Då skulle det normalt inte varit några problem alls att skriva å, ä eller ö direkt i källkoden. Det är något lurt med det här och hart när omöjligt att luska ut om man inte själv sitter vid din dator. Men skit samma - om det funkar med aumlandet och du är nöjd så är ju allt bra.
Danne V skrev:
Bra det löste sig.
Men du menar tvärtom, va: Just NU har sidorna iso-8850-1. Hade dom haft utf-8, så skulle du inte behövt skriva i ASCII (ä osv). I så fall kan du t.ex. ha laddat upp filerna felaktigt till servern.
Helt korrekt. Jag misstänker att filerna inte är sparade med UTF-8 teckenkodning.
Compusa skrev:
Helt korrekt. Jag misstänker att filerna inte är sparade med UTF-8 teckenkodning.
Kan vara att många tror att charsetet man väljer bara är en snutt text/kod som man läser på vanligt sätt som vilken annan kod som helst. Trodde jag också tidigare och det är ju ganska lätt att göra det misstaget.
Charsetet måste ju även ingå i dokumentets meta-info, dvs dolt för ögat men läsbart för olika applikationer (t.ex. webbläsare) och det är därför viktigt att man alltså sparar dokumentet som utf-8 också.
Det är nog där missen gjorts.
Hmm, att filerna sparas som UTF-8 verkar inte ha gjorts. Utan de verkar vara sparade som ANSI (Men det går väl under ASCII misstänker jag väl).
Hur tar man reda på vilket format en fil är i utan att öppna, spara om i det formatet det är tänkt att vara i?
edit: Men åäö bör väl ändå vara ö:ade för att när en person som saknar dessa tecken besöker så blir det väl bara konstiga tecken (som frågetecken till exempel) av åäö tecknena?
Sasch skrev:
Hmm, att filerna sparas som UTF-8 verkar inte ha gjorts. Utan de verkar vara sparade som ANSI (Men det går väl under ASCII misstänker jag väl).
Hur tar man reda på vilket format en fil är i utan att öppna, spara om i det formatet det är tänkt att vara i?
Ingen aning vad du har för möjligheter. I Dreamweaver och BBEdit (Mac) kan man enkelt fixa det där. Har du nån av dom?
Sasch skrev:
edit: Men åäö bör väl ändå vara ö:ade för att när en person som saknar dessa tecken besöker så blir det väl bara konstiga tecken (som frågetecken till exempel) av åäö tecknena?
Nej... om användaren inte har en font med rätt tecken så spelar det ju ingen roll hur du gör i koden.
Sasch skrev:
Hur tar man reda på vilket format en fil är i utan att öppna, spara om i det formatet det är tänkt att vara i?
Jag gjorde ett eget .net-program för just detta eftersom jag sälv var i behov av det (hittade inget på nätet). Om du vill testa det så kan du skicka ett PM till mig. Det man gör med programmet är att man letar upp en fil som man vill försöka ta reda tecken-kodningen på, därefter försöker programmet ta reda på det och presenterar därefter resultatet. Har fungerat bra för de test som jag gjort.
Jag är ju på Mac, men frågade för skojs skull en bekant som kör Win. Han svarade så här:
A quick way to check, and change the encoding if necessary, is to open the file in Notepad. The Save As dialog has an option for Encoding at the bottom. Set it to UTF-8.
It's quite possible that the problem is caused by headers sent by the server. Even if a file is encoded as UTF-8 and has the correct meta tag in the head, server headers take precedence. If the server is sending an iso-8859-1 header, that's the encoding that browsers will use.
I had this problem with some Japanese pages on my old server. It was sending a UTF-8 header, thereby corrupting my Shift_JIS pages. I got round it by using PHP to send the correct header for each of the affected pages.
Kanske det kan hjälpa?
Jag är i dagsläget ingen MAC-användare utan enbart pc. Ändringarna har dessutom tagit plats när jag inte har suttit vid min egna dator (En laptop står på inköpslistan) men en licens på Dreamweaver finns i dagsläget, ja. Får läsa in mig lite på dw nudå. Vet du om Textmate (mac) har samma kontroll?
Compusa skrev:
Jag gjorde ett eget .net-program för just detta eftersom jag sälv var i behov av det (hittade inget på nätet).
Vet du om Windows (I de senare service packen, kör .net i bakgrunden då jag har kunnat istallera flera .msi filer utan att för den skullen installera dotnet plattformen på datorn?
Ehh... missade ni tipset från min bekant, funkar det inte, eller ställer engelskan till bekymmer?
Danne V skrev:
Kanske det kan hjälpa?
Det var faktiskt väldigt intressant läsning, men problemet löstes helt med att enkelt spara om filerna till UTF-8 encoding... I mitt fall verkar servern inte ställa till några busknep som att skicka en egen header - Tack och lov. :)