こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

携帯とPC振り分け

現在PCサイトを作っています。
携帯からアクセスがあった場合に振り分け(?)したいと思っていて、現在ソースがこんなかんじです。
.htaccessに

DirectoryIndex index.php index.cgi index.html index.shtml

と書いてあって、
<?php
$mobile = print <<<MOBILE
<?xml version="1.0" encoding="Shift_JIS"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS" />
<meta http-equiv="Content-Script-Type" content="text/javascript" />
<meta http-equiv="Content-Style-Type" content="text/css" />
<title>携帯には対応していません(HPタイトル)</title>
</head>
<body>
携帯には対応していません。(HPタイトル)
</body>
</html>
MOBILE;

if(isset($_SERVER['HTTP_USER_AGENT'])){
$user_agent = $_SERVER['HTTP_USER_AGENT'];
if(eregi("DoCoMo",$user_agent)){$mobile;exit;}
else if(eregi("UP\.Browser",$user_agent)){$mobile;exit;}
else if(eregi("J-PHONE",$user_agent)){$mobile;exit;}
else if(eregi("Vodafone",$user_agent)){$mobile;exit;}
else if(eregi("mobile",$user_agent)){$mobile;exit;}
else if(eregi("J-EMULATOR",$user_agent)){$mobile;exit;}
else{header("Location: index.html");exit;}
}else{
print <<<END
<html><body>
HTTP_USER_AGENT Error<br /><br />
ユーザーエージェントが読み込めませんでした。<br />
</body></html>
END;
}
?>
こんな感じです。
ですが、エラーはいてしまいます。
Warning: Cannot modify header information - headers already sent by (output started at D:\XAMPP\htdocs\index.php:16) in D:\XAMPP\htdocs\index.php on line 26
こんな感じです。
まったくのPHP初心者(HTMLはまあまあわかる)なので
だいぶソースが間違っていると思います。
このPHPのソースは携帯サイトnet(http://www.keitai-site.net/)からいただきました。

投稿日時 - 2009-05-23 21:00:25

QNo.4984316

すぐに回答ほしいです

質問者が選んだベストアンサー

>> $mobile = print <<<MOBILE
上記行を 下記に変更してみてください(printを削除)
$mobile = <<<MOBILE


>> if(eregi("DoCoMo",$user_agent)){$mobile;exit;}
上記を下記に変更(printを追加)
if(eregi("DoCoMo",$user_agent)){print $mobile;exit;}
以降の5行も同じ($mobileの前にprint追加)

投稿日時 - 2009-05-23 22:27:57

お礼

動作しました!
ありがとうございました。

投稿日時 - 2009-05-24 14:36:57

ANo.1

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(1)

あなたにオススメの質問