|
SWiSH Forum
Forum użytkowników programów SWiSH
|
Polskie znaki, ogonki, kodowanie |
Autor |
Wiadomość |
rash
Praktyk
Pomógł: 2 razy Dołączył: 24 Mar 2005 Posty: 23 Skąd: Poznań
|
Wysłany: Sro 12 Lis, 2008 22:20 Polskie znaki, ogonki, kodowanie
|
|
|
Przeglądając forum często powtarzają się pytania o polskie znaki ...
Postanowiłem napisać coś od siebie
Oto kilka przykładów rozwiązania "problemu"
Nasz problem to kodowanie utf-8
1. Masz plik tekstowy wczytujesz do swf'a masz krzaki lub wycina literki
rozwiązanie:
jeśli jest to plik statyczny, który edytujesz raz i zapominasz nie męcz się użyj notatnika
plik zapisz jako ...
w 90% przypadków wystarczy
2. plik z treścią dynamiczną (samo aktualizujące sie newsy np.)
najlepiej wczytywać plik .php
php:
<?php
function do_iso($tekst)
{
$tekst = iconv('ISO-8859-2', 'utf-8', $tekst);
return $tekst;
}
//
$myFile=fopen("http://www.jakasstrona.pl/strona.html","r");
while(!feof($myFile))
{
$myLine.=fgets($myFile,4096);
}
fclose($myFile);
$start="<ul>"; // od czego zaczynamy - dowolny fragment kodu rozpoczynający interesujący nas fragment strony
$end="</ul>"; // na czym konczymy - dowolny fragment kodu kończący interesujący nas fragment strony
$start_position=strpos($myLine, $start);
$end_position=strpos($myLine, $end)+strlen($end);
$length=$end_position-$start_position;
$myLine=substr($myLine, $start_position, $length);
$opis = do_iso($myLine); // ogonki jeżeli wyciągamy dane bezpośrednioz bazy danych możemy pominąć funkcje (zakładając ze baza jest kodowana w utf)
$tekst = "&tekst=$opis&";
print "$tekst";
?>
w nazwę pola wpisujemy "tekst"
generalnie w zmiennej tekst może być wszystko cały kod html itd. czasami jednak może się pojawić problem, nagle wczytuje się tylko część tekstu ...
3. często jest tak kiedy podłączamy stronę, na której są linki przekazujące zmienne np. www.jakasstrona.pl/?id15&s=345657&kka=123 itd.. problemem są nieszczęsne &
(zakładamy oczywiście że chcemy, aby działały)
wtedy z pomocą moze przyjsc funkcja:
Kod: | $myLine=str_replace("&","$$",$myLine); |
zamieniamy sobie "&" na np "$$"
i spokojnie wczytujemy jednak jeśli chcemy, aby linki były aktywne ....
musimy zadziałać podobnie działającą funkcją w swishu:
kiedyś znalazłem taką i działą super:
Kod: | onSelfEvent (enterFrame)
{
// -----------------------
// Replace single or
// multiple chars in a
// String.
// The original string is
// not affected.
//
// Based on a idea of
// Davide Beltrame (Broly)
// mail: davb86@libero.it
// -----------------------
String.prototype.replace = function()
{
var arg_search, arg_replace, position;
var endText, preText, newText;
arg_search = arguments[0];
arg_replace = arguments[1];
if(arg_search.length==1) return this.split(arg_search).join(arg_replace);
position = this.indexOf(arg_search);
if(position == -1) return this;
endText = this;
do
{
position = endText.indexOf(arg_search);
preText = endText.substring(0, position)
endText = endText.substring(position + arg_search.length)
newText += preText + arg_replace;
} while(endText.indexOf(arg_search) != -1)
newText += endText;
return newText;
}
// ---------------------
// JAK UŻYĆ:
// ---------------------
//originalString = "This is the original fucking text. What the hell are you typing?"
//replacedText = originalString.replace('fuck','***');
//trace("-----------------------------");
//trace("original was: " + originalString);
//trace("replaced is: " + replacedText);
} |
i np na MC z polem tekst dajemy coś takiego:
Kod: | onSelfEvent (enterFrame) {
_root.MC.tekst = _root.MC.tekst.replace('$$','&');
stop();
} |
Mam nadzieje że komuś się przyda
jeśli ktoś zna przyczynę zbyt dużego użycia procesora w firefoxie przy tego typu rozwiązaniach bardzo proszę o pomoc |
_________________ == Pozdrawiam RaSh == |
|
|
|
|
|
Nie możesz pisać nowych tematów Nie możesz odpowiadać w tematach Nie możesz zmieniać swoich postów Nie możesz usuwać swoich postów Nie możesz głosować w ankietach Nie możesz załączać plików na tym forum Możesz ściągać załączniki na tym forum
|
Dodaj temat do Ulubionych Wersja do druku
|
|
|
|
|
|
Nowe zasady dotyczące cookies. Wykorzystujemy pliki cookies, aby nasz serwis lepiej spełniał Państwa oczekiwania. Można zablokować zapisywanie cookies, zmieniając ustawienia przeglądarki.
| Strona wygenerowana w 0.13 sekundy. Zapytań do SQL: 13 |
|
|