重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

http://seno.cc/archives/875
ここのサイトを参考に、リンクを押した時にPCサイトとスマフォ向けサイトの表示が、
切り替わる様にしたいのですが、うまくいきません。

解説のとおり <?php ?> のソースの一番上に
<?php include_once( "lib/prerouting.php"); ?>
を乗せ、index.php として保存しました。

自分のサーバーではサブディレクトリは設けてないので、
http://aimmy-aimmy.com/test2.html
という風になります。

ただ解説によると
「設置は、ルート直下にlibというディレクトリを作り、このソースを放り込むだけです。

あとはリダイレクト元である/index.phpの一番上に

<?php include_once( "lib/prerouting.php"); ?>
を挿入してリダイレクトの作業は完了。」

とあるのですが、先に挙げた</php ?> を prerouting.php として保存するのか?
それとも index.php として保存するのか?ここがよくわかりません。

一応その名前にしてlibフォルダの中に入れたのですが、反映されませんでした。

index.phpについては言及されてないのでわからないのですが、
質問本文の内容を実現するには、何が足りてないのでしょうか?

何かアドバイス頂ければ幸いです。

A 回答 (1件)

こういうのはある程度内容を理解して実施しないと痛い目にあいますよ~…と一応警告しておいて、と。



ソースが掲載されているPHPファイルは、改変せずにそのままサーバにアップしてよいです。
場所はどこでも良いですが、わからなければ"lib"というフォルダを作成してそこに放り込んでください。

あとは、PC向けのHTMLファイルである /index.html を index.php にリネームし、その先頭に

<?php include_once( "lib/prerouting.php"); ?>

の一文を放り込めばよいはず。

ただし、このPHPソースを見るとスマホに対しては/spn フォルダにリダイレクトするようなので、スマホ向けのコンテンツは/spn のフォルダ内に置いておく必要があります。

質問者さんの希望に沿う動きにするにはPHPのソースをいじる必要があるかと思いますが、PHPをちょっとかじっただけの私のスキルではすぐに回答はできませんので詳しい方に譲ります:-P
    • good
    • 0
この回答へのお礼

なるほど、index.htmlをindex.phpにリネームするんでしたか!それだけだとまだダメでしたが、他所で知った
(function(){
var ua = navigator.userAgent.toUpperCase();
var url = document.location.pathname;
var spDir = '/sm/';
(ua.indexOf('IPHONE') != -1 || (ua.indexOf('ANDROID') != -1 && ua.indexOf('MOBILE') != -1))?
isSP() :
isPC();
function isSP(){
if(url.match(spDir)){
return false;
}else{
location.href = spDir;
}
}
function isPC(){
if(!url.match(spDir)){
return false;
}else{
location.href = '/';
}
}
}());

・・・というソースをuserAgent.js として保存し、
htmlのhead内に
<!-- 切り替え用 -->
<script type="text/javascript" src="userAgent.js"></script>

というのを合わせて入れたところ、ちゃんとスマフォで見るとスマフォサイトに切り替わる様になりました!

リネームとかしらなかったので、助かりました!
ありがとうございます。

お礼日時:2012/12/11 12:45

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!