01. september 2007 - 19:53
Der er
4 kommentarer og
1 løsning
Konverting af 'underlige' symboler
Jeg har et problem med at min str_replace på nogle symboler ikke fungerer.
Det som ligger i den fil, som skal redigeres:
øko<br /><br />og økochokolade<br />
#####
Funktionen, som opdaterer:
function replace($str) {
$tekstfix1 = array('æ', 'ø', 'å', 'Æ', 'Ø', 'Å');
$tekstfix2 = array('æ', 'ø', 'å', 'Æ', 'Ø', 'Å');
$str = str_replace($tekstfix1, $tekstfix2, $str);
$tekstfix3 = array('æ', 'ø', 'å', 'Æ', 'Ø', 'Å');
$tekstfix4 = array('æ', 'ø', 'å', 'Æ', 'Ø', 'Å');
$str = str_replace($tekstfix1, $tekstfix2, $str);
return $str;
}
#####
Det som foretager opdateringen:
$get = file_get_contents($files[$fid]);
$get = replace($get);
echo $get;
Men den opdaterer ikke tegnene, dem outputter dem bare på samme måde.
01. september 2007 - 20:11
#2
Det kan være en idé at bruge $tekstfix3 og 4. Men en bedre idé at se på din encoding - det du lave sku' slet ikke være nødvendigt, hvis den samme encoding bruges konsekvent.
01. september 2007 - 20:25
#3
<ole>
Jeg er ret sikker på, der er tale om data i utf-8, der forsøges tolket og vist som iso-8859-1, så der er mindst ét led i kæden, hvor du ikke anvender den rette encoding :)
/mvh
</bole>
01. september 2007 - 20:29
#4
Tjek din side her:
http://validator.w3.org/#validate_by_uri+with_options- og klik i 'Verbose output'. Så kan du se, hvad din server bruger, når den sender dokumentet.
Du skal også sikre dig, du gemmer dokumentet med korrekt encoding (ANSI for iso-8859-1).
Du skal også sikre dig, din DB arbejder med korrekt tegnsæt - og at alle indkomne data fra anden side er kodet korrekt i forhold til dit system