xmlの宣言でエラーになってしまいます。
xmlの宣言でエラーになってしまいます。
x-servletを導入して携帯サイトを構築しています。
携帯用のgoogle googleAnalyticsも導入するのにxml宣言を先頭に記述すると、
↓エラーの内容↓
━━━━━━━━━━━━━━━━━━━━━━━
XML ページを表示できません
スタイル シートを使用した XML 入力は表示できません。エラーを訂正してください。 [更新] ボタンをクリックするか、または後でやり直してください。
--------------------------------------------------------------------------------
システム エラー: -2146697210 リソース 'http://ドメイン/i-xhtml_4ja_10.dtd' の実行エラーです。
━━━━━━━━━━━━━━━━━━━━━━━
というエラーのメッセージが出てしまいます。
先頭のxml宣言をコメントアウトで外すとエラーは表示されなくなります。
ちなみにブラウザはIE8でfirefoxではエラーも表示されません。
DOCTYPEの宣言が原因なのかと、いろいろ調べて試したりもしたのですが、解決できません。
何か良い対処法があれば、どなたかご教示いただけると大変助かります。
どなたかお願いします。
ヘッダのソースを参考までに貼り付けておきます。
━━━━━━━━━━━━━━━━━━━━━━━
<?xml version="1.0" encoding="Shift_JIS"?> ←※コメントアウトするとエラーが出ない
<!DOCTYPE html PUBLIC "-//i-mode group (ja)//DTD XHTML i-XHTML(Locale/Ver.=ja/2.0) 1.0//EN" "i-xhtml_4ja_10.dtd">
<?php
// Copyright 2009 Google Inc. All Rights Reserved.
$GA_ACCOUNT = "MO-16273642-1";
$GA_PIXEL = "/ga.php";
function googleAnalyticsGetImageUrl() {
global $GA_ACCOUNT, $GA_PIXEL;
$url = "○○○○";
$url .= $GA_PIXEL . "?";
$url .= "utmac=" . $GA_ACCOUNT;
$url .= "&utmn=" . rand(0, 0x7fffffff);
$referer = $_SERVER["HTTP_REFERER"];
$query = $_SERVER["QUERY_STRING"];
$path = $_SERVER["REQUEST_URI"];
if (empty($referer)) {
$referer = "-";
}
$url .= "&utmr=" . urlencode($referer);
if (!empty($path)) {
$url .= "&utmp=" . urlencode($path);
}
$url .= "&guid=ON";
return str_replace("&", "&", $url);
}
?>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=Shift_JIS" />
<title>○○○○</title>
<meta name="description" content="○○○○" />
<meta name="keywords" content="○○○○" />
<x:raw> ←x-servletのコード
<style type="text/css">
<!--
a:focus{ color:white;}
a:link{ color:#335544;}
a:visited{ color:#335544;}
-->
</style>
</x:raw>
</head>
お礼
回答ありがとうございます。 ルート要素が1つであれば、yyr446さんの記述で2つのコンテンツを指定することは可能ということでよろしいでしょうか? お忙しい中、お答えいただきありがとうございました。 明日、早速試してみようと思います。