Kom ihåg mig?
Home Menu

Menu


Krångel med ÅÄÖ

 
Ämnesverktyg Visningsalternativ
Oläst 2014-12-09, 17:10 #11
Tsarraz Tsarraz är inte uppkopplad
Medlem
 
Reg.datum: Apr 2013
Inlägg: 193
Tsarraz Tsarraz är inte uppkopplad
Medlem
 
Reg.datum: Apr 2013
Inlägg: 193
Hur ansluter du till databasen?
PDO mysqli eller vanlig mysql
Tsarraz är inte uppkopplad   Svara med citatSvara med citat
Oläst 2014-12-09, 18:15 #12
Clarence Clarence är inte uppkopplad
Administratör
 
Reg.datum: Jan 2003
Inlägg: 1 974
Clarence Clarence är inte uppkopplad
Administratör
 
Reg.datum: Jan 2003
Inlägg: 1 974
Citat:
Ursprungligen postat av ewestergard Visa inlägg
Jag har sparat både databasen och tabellerna i utf8_unicode_ci
Är datan korrekt i databasen? Dvs om du ansluter till databasen direkt med utf8 encoding, får du ut läsbar data?
Clarence är inte uppkopplad   Svara med citatSvara med citat
Oläst 2014-12-09, 20:12 #13
ewestergard ewestergard är inte uppkopplad
Medlem
 
Reg.datum: Sep 2011
Inlägg: 51
ewestergard ewestergard är inte uppkopplad
Medlem
 
Reg.datum: Sep 2011
Inlägg: 51
Citat:
Ursprungligen postat av Clarence Visa inlägg
Är datan korrekt i databasen? Dvs om du ansluter till databasen direkt med utf8 encoding, får du ut läsbar data?
Jag är riktig nybörjare tyvärr, menar du:

$conn = mysql_connect($host, $user, $password);
mysql_select_db($db,$conn);

mysql_set_charset('utf-8',$conn);

För det har jag provat och det funkar inte tyvärr inte, får samma problem.
ewestergard är inte uppkopplad   Svara med citatSvara med citat
Oläst 2014-12-09, 22:46 #14
SimonPs avatar
SimonP SimonP är inte uppkopplad
Mycket flitig postare
 
Reg.datum: May 2006
Inlägg: 832
SimonP SimonP är inte uppkopplad
Mycket flitig postare
SimonPs avatar
 
Reg.datum: May 2006
Inlägg: 832
I vissa fall går det inte att lita på att datat är UTF-8 även fast det borde vara det.
Jag fick lov att göra egen lösning när jag hade ett liknande problem, men i mitt fall handlade det om data som kom utifrån.
Kod:
if (!is_utf8($strang)) $strang=utf8_encode($strang);

function is_utf8($str)
{
   $c=0; $b=0;
   $bits=0;
   $len=strlen($str);
   for($i=0; $i<$len; $i++)
   {
      $c=ord($str[$i]);
      if($c > 128)
      {
         if(($c >= 254)) return false;
         elseif($c >= 252) $bits=6;
         elseif($c >= 248) $bits=5;
         elseif($c >= 240) $bits=4;
         elseif($c >= 224) $bits=3;
         elseif($c >= 192) $bits=2;
         else return false;
         if(($i+$bits) > $len) return false;
         while($bits > 1)
         {
            $i++;
             $b=ord($str[$i]);
             if($b < 128 || $b > 191) return false;
             $bits--;
         }
      }
   }
   return true;
}
SimonP är inte uppkopplad   Svara med citatSvara med citat
Oläst 2014-12-10, 13:35 #15
Kimppas avatar
Kimppa Kimppa är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Jul 2010
Inlägg: 793
Kimppa Kimppa är inte uppkopplad
Mycket flitig postare
Kimppas avatar
 
Reg.datum: Jul 2010
Inlägg: 793
Testa byta tabellen från "utf" till "latin1_swedish"-nånting.

Det brukar lösa problemet för mig (fungerar för de flesta specialtecken - även icke-svenska).
Kimppa är inte uppkopplad   Svara med citatSvara med citat
Oläst 2014-12-10, 15:26 #16
ANttila ANttila är inte uppkopplad
Medlem
 
Reg.datum: Aug 2013
Inlägg: 81
ANttila ANttila är inte uppkopplad
Medlem
 
Reg.datum: Aug 2013
Inlägg: 81
Citat:
Ursprungligen postat av ewestergard Visa inlägg
Jag har sparat både databasen och tabellerna i utf8_unicode_ci
Se till så att du lägger in data som är i rätt encoding, använd mb_detect_encoding eller annat för att testa och se vad du skickar in.
ANttila är inte uppkopplad   Svara med citatSvara med citat
Oläst 2014-12-10, 16:01 #17
tartareandesire tartareandesire är inte uppkopplad
Supermoderator
 
Reg.datum: Jan 2004
Inlägg: 11 585
tartareandesire tartareandesire är inte uppkopplad
Supermoderator
 
Reg.datum: Jan 2004
Inlägg: 11 585
Citat:
Ursprungligen postat av Kimppa Visa inlägg
Testa byta tabellen från "utf" till "latin1_swedish"-nånting.

Det brukar lösa problemet för mig (fungerar för de flesta specialtecken - även icke-svenska).
Det kan visserligen lösa problem med åäö om man gjort fel från början men annars bör man istället bestämma sig för om man vill använda utf eller latin. Utf* är mer eller mindre standard idag, det är inte latin*. En hel del specialtecken kan du - precis som du säger - hantera ändå men långt ifrån alla språk.
__________________
Full-stack developer, free for smaller assignments
tartareandesire är inte uppkopplad   Svara med citatSvara med citat
Oläst 2014-12-10, 20:28 #18
ewestergard ewestergard är inte uppkopplad
Medlem
 
Reg.datum: Sep 2011
Inlägg: 51
ewestergard ewestergard är inte uppkopplad
Medlem
 
Reg.datum: Sep 2011
Inlägg: 51
Ja ni... först och främst tack så mycket för all hjälp!

Har provat alla tips och råd i tråden och löser verkligen inte problemet. Såg att en tabell var sparad i "latin1_swedish-ci" ingen av dem som genererar någon text, kan det påverka? Sparade om den i utf8_unicode_ci men det hjälpte inte.

Verkar som att det enda är att skapa en ny databas och göra om allt? Är en hel del tabeller och kolumner så undviker gärna det men ser ingen annan lösning på problemet.
Måste väl vara databasen det är fel på?
ewestergard är inte uppkopplad   Svara med citatSvara med citat
Oläst 2014-12-11, 08:52 #19
corneliisandberg corneliisandberg är inte uppkopplad
Nykomling
 
Reg.datum: Oct 2012
Inlägg: 33
corneliisandberg corneliisandberg är inte uppkopplad
Nykomling
 
Reg.datum: Oct 2012
Inlägg: 33
Hej Ewestergard!
Det problem du beskriver är ett väldigt vanligt problem och kan ta allt från minuter till veckor att lösa om man kommer från Latin-hållet och vill över till Utf. Ibland har man inte utf-8 på en fil av rent misstag också.

För att få Utf-8 att fungera måste Samtliga filer även de som du inkluderar typ db.php eller kanske settings.php också vara av utf-8.
Om du sitter på en Windows funkar gamla Notepad förvånansvärt bra för att checka vilket format du använder.
1. Öppna de filer som används av webbsidan (alla includes också)
2. Spara som...längst ner kan du välja format. Där ser du enkelt om du inte har utf8 på filen och spara bara om filen.
3. Gör detta med alla filer

Lycka till!
corneliisandberg är inte uppkopplad   Svara med citatSvara med citat
Svara


Aktiva användare som för närvarande tittar på det här ämnet: 1 (0 medlemmar och 1 gäster)
 

Regler för att posta
Du får inte posta nya ämnen
Du får inte posta svar
Du får inte posta bifogade filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är
HTML-kod är av

Forumhopp


Alla tider är GMT +2. Klockan är nu 18:32.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson
 
Copyright © 2017