Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Sekcja CDATA, problem
kufalo
post
Post #1





Grupa: Zarejestrowani
Postów: 251
Pomógł: 2
Dołączył: 24.08.2005

Ostrzeżenie: (0%)
-----


Witam, chodzi mi o dekcje CDATA

Cytat
Sekcja CDATA jest techniką, która pozwala stosować w dokumencie dowolne znaki, gdyż zabrania procesorowi XML przetwarzania ich zgodnie z zasadami XML. Wyłącza objęty nią fragment dokumentu z przetwarzania i dosłownie "cytuje" jego zawartość, np dowolna treść ze znakami <, >, & itd...


  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta http-equiv="content-type" content="text/html;charset=utf-8" />
  5. <script type="text/javascript">
  6.  
  7. //<![CDATA[
  8.  
  9. alert('</script>')
  10.  
  11. //]]>
  12.  
  13. </script>
  14. </head>
  15. <body>
  16.  
  17. </body>
  18. </html>


Wiec z ciekawosci sprawdzam jej dzialanie i niestety </script> znajdujacy sie w alercie jest interpretowany przez przegladarke (IE, FF, Opera, Safari) jako zakonczenie skryptu...
Dlaczego tak sie dzieje (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)

Ten post edytował kufalo 6.09.2007, 10:01:05
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
piter2k1
post
Post #2





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 6.02.2007

Ostrzeżenie: (0%)
-----


Jeśli chodzi o XHTML mamy tu problem!

Odpowiednim typem MIME jest oczywiście "application/xhtml+xml".

Ale niestety przeglądarki Internet Explorer nie dorosły jeszcze do naszych czasów i nie akceptują tego typu!
Zamiast strony wyrzucają okienko do pobierania! IE obsługuje prawidłowo tylko typ "text/html" a resztę z błędami (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)

aby nagłówki działały prawidłowo należy użyć php -> header

Ale tak jak już mówiłem po wpisaniu takiego kodu:
Kod
<php
header("Content-Type: application/xhtml-xml; charset=utf-8");
?>


Przeglądarka IE będzie chciała ściągnąć stronę.

Więc na razie musimy używać "text/html"

Przykład:

Kod
<php
header("Content-Type: text/html; charset=utf-8");
?>
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pl">


Nie zapominając oczywiście o dołączeniu deklaracji XML:
<?xml version="1.0" encoding="iso-8859-2"?>

Mam nadzieję że pomogłem (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Ten post edytował piter2k1 14.09.2007, 13:02:02
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 29.12.2025 - 02:06