トップページ⇒php
927コメント283KB

携帯サイトのWebプログラムを語ろう Part3

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2009/01/21(水) 22:36:26ID:Up1FlolP
携帯サイトのWebプログラムに関する話題を扱うスレです。

前スレ
http://pc11.2ch.net/test/read.cgi/php/1207013301/
0083nobodyさん2009/02/23(月) 23:05:07ID:???
>>82
アンカーリンクに#以外で代用できる文字があったら教えて下さい。
0084752009/02/24(火) 08:56:43ID:???
アンカーの件、回答ありがとうございました。
アドバイス通り、アンカー付リダイレクトはやめておきます。

内容が変化するリストページの指定箇所に、頭出ししたかったものですから。
アンカー付リンクを含むジャンプ用ページを出力する方向で考えてみます。
0085nobodyさん2009/02/24(火) 09:02:45ID:???
cgiで処理してるのなら、普通にパラメータ渡しじゃだめなの?
0086752009/02/24(火) 12:35:49ID:???
>>85
いいんですけど、リスト該当箇所というのがミソなので、
アンカーを使おうと思ったわけで。
PCで見るか、javascriptが使えるなら問題ないんですけどね。
0087nobodyさん2009/02/24(火) 17:23:13ID:???
cgiファイルにアンカー(#XXXX)なんて、PC向けでも普通は使わないと思うけどね。
0088nobodyさん2009/02/25(水) 13:12:16ID:???
そうかな。結構使うよ。
こんな風に、フォームを画面の一番上にしたい、とか。

コンテンツコンテンツ
コンテンツコンテンツ
コンテンツコンテンツ
コンテンツコンテンツ
<a name="form"></a>
<form action="./myself.cgi#form">
<input type="submit">
</form>
0089nobodyさん2009/02/25(水) 13:59:41ID:???
そんな亜流な使い方を示されてもねぇ。
0090nobodyさん2009/02/25(水) 14:37:03ID:???
機種によって表示が乱れるし、動かないし、とても使えた方法じゃない
0091nobodyさん2009/02/25(水) 15:59:06ID:???
こちらでどうぞ

携帯電話専用ホームページの制作方法 2台目
http://pc11.2ch.net/test/read.cgi/hp/1225769117/l50
0092nobodyさん2009/02/26(木) 15:53:03ID:???
少なくとも金を貰って作るHPじゃ使わないわな。
0093nobodyさん2009/03/01(日) 11:10:31ID:???
>>88
普通にCGIの処理の最後でリダイレクトしろよ
0094nobodyさん2009/03/01(日) 11:20:59ID:???
>>93
auではそのリダイレクトにアンカーが使えない、と言うのが議論の発端なわけだが?
0095nobodyさん2009/03/01(日) 11:36:14ID:???
使えないと言ってる機種は何?
検証しておきたいんだけど。
0096nobodyさん2009/03/02(月) 03:47:27ID:???
携帯って
基本的に、クッキーは
保存できないの?

じゃあ、セッションの扱いはどうするの?
0097nobodyさん2009/03/02(月) 07:32:10ID:???
>>96
全auとSBの一部は使える
それ以外なら引き回し
0098nobodyさん2009/03/02(月) 07:35:54ID:???
引き回しっていうのは、hidden?
0099nobodyさん2009/03/02(月) 08:38:17ID:???
>>98
query string
いわゆる引数
?SSID=AJPTJDA4TPG2WM
とかって奴
0100nobodyさん2009/03/02(月) 08:50:56ID:???
>>99
ああ、URLに入れるって意味ね。
0101nobodyさん2009/03/02(月) 08:57:44ID:???
>>100
form使うならhiddenだったりもするし。
つまりは、常にGETかPOSTで次のページにセッションIDを送っていくってこと。
0102nobodyさん2009/03/02(月) 09:08:26ID:???
今は全キャリアでID取れるんだから、それ使えばいいだけの話。
0103nobodyさん2009/03/02(月) 13:47:58ID:???
取れないようになってる端末もあるし。そんな単純な話なら誰も苦労しないツーの。
0104nobodyさん2009/03/02(月) 16:02:26ID:???
勝手に苦労してろ。
0105nobodyさん2009/03/02(月) 20:57:53ID:???
104 :nobodyさん:2009/03/02(月) 16:02:26 ID:???
勝手に苦労してろ。
0106nobodyさん2009/03/02(月) 22:41:11ID:???
>>104
同意
0107nobodyさん2009/03/02(月) 22:55:51ID:9uktZZY+
すんません、誰かSoftBankのSH910使ってる人いたら
教えてください・・・
入力フォームで、数値の入力しか受け付けない箇所があるんですが
なぜか上記の機種でのみ、ちゃんと半角数字で入力しても
半角数字以外が含まれているとエラーが出るそうなんです。
全角数字を半角に強制的に変換しても同じらしいんですが
手元に同機種がなく、どうしようもあるません。
なにかゴミでも付いてしまうんでしょうか?
原因と解決策が分かる方がいたら、お助けください・・・。
0108nobodyさん2009/03/02(月) 23:17:38ID:???
送り側と受け取り側をどうやっているのか書こう
0109nobodyさん2009/03/03(火) 02:40:50ID:???
個体識別番号は、ユーザが送出を許可してないとダメだし、ドコモの場合、取得できるように処理を加えないと取得できない。
公式サイトならUIDが自由に取れるが。個体識別番号がセッションIDの代りになるわけない。
0110nobodyさん2009/03/03(火) 02:59:18ID:???
そんなばかな
0111nobodyさん2009/03/03(火) 03:16:16ID:???
個体識別番号を取る
PHPのコード教えて。
0112nobodyさん2009/03/03(火) 03:27:04ID:???
SBとAUは環境変数でそのまま取れる。ドコモはパラメーターを付けてリクエストさせないと行けない。だからUTNと大差ない。致命的なのはSSL下では取得できないこと。というか、こんなの常識だから。
0113nobodyさん2009/03/03(火) 04:28:31ID:???
荒らし対策に個体識別番号使うのは
最強だと思うんで、少し調べてみたいんですよね。

2ちゃんねるも携帯の個体識別番号、
有効に使ってるでしょ?
0114nobodyさん2009/03/03(火) 20:26:14ID:???

携帯サイトのWebプログラムを語ろう Part2

924 :nobodyさん:2009/01/05(月) 10:49:43 ID:???
auは今月から4月まで毎月IP追加あり
公式持ちには告知済みだけど
0115nobodyさん2009/03/03(火) 20:44:32ID:???
単なる環境変数だから偽装しようと思えば簡単に出来る。やるならソースIPアドレスで制限かけるしかない。
0116nobodyさん2009/03/03(火) 21:17:04ID:???
「情報を送信しますか?」のダイアログが出ないので大違いだろ<ドキュモgid
0117nobodyさん2009/03/03(火) 21:20:00ID:???
何で他のキャリアみたいに普通に環境変数に入れなかったか、ドコモのやることはさっぱり分からない。
0118nobodyさん2009/03/03(火) 21:36:03ID:???
そんなこと言ってると高木なんとかって人がぶちギレるぞ
0119nobodyさん2009/03/03(火) 22:07:00ID:???
>>116
確認は出ないけど、URLに&guid=onって付け加えないとiモードidは送り出されない
0120nobodyさん2009/03/03(火) 22:21:03ID:???
utn
0121nobodyさん2009/03/04(水) 11:22:36ID:???
>>115
IPアドレス+識別番号でないと無意味だわな。

>>119
2chにカキコした時のURLには必ず付与されてるよ。例えPCからカキコしても。
0122nobodyさん2009/03/05(木) 13:37:31ID:???
>>119
rewrite 使えば一瞬
0123予言者2009/03/08(日) 01:09:32ID:???
茸 春端末(06-08)から
・キャッシュサイズが500k
・JavaScript が利用可能に (Ajax可)
・iframeが利用可能に
・CSS外部ファイルOK
0124nobodyさん2009/03/08(日) 01:32:54ID:???
>>123
妄想乙
0125nobodyさん2009/03/08(日) 02:39:08ID:???
>>123
通報しました
0126nobodyさん2009/03/08(日) 05:07:12ID:???
2人も釣れとる…
0127nobodyさん2009/03/08(日) 12:14:47ID:???
>>123
クッキー対応も足しておいて!
0128nobodyさん2009/03/08(日) 16:05:46ID:???
今更キャッシュを増やされたり対応機能が追加されても、ユーザーの端末の買い替え期間が伸び捲ってる
から、現行端末で間に合う形式で当分続けるしか無いわな。

勿論、端末種別で切り替えれば済むが、少なくとも2G端末が絶滅してからでないと手間が増えるばかりだし。
0129nobodyさん2009/03/10(火) 16:26:43ID:???
>>114
3か月分の更新が纏めて公表されたって事かな? auのIPアドレス26個削除キター。
0130nobodyさん2009/03/10(火) 19:24:44ID:???
>>129
これで切り替えしたみたいだな。

IPアドレス変更に伴うサービス停止の公表があるのは珍しいな。

EZweb、メンテナンスで一部サービス停止──3月10日午前
http://plusd.itmedia.co.jp/mobile/articles/0903/05/news062.html
0131nobodyさん2009/03/10(火) 23:37:30ID:???
IPのページをスクレイピングしているサイトは多分廃止IPも通ってるなw
0132nobodyさん2009/03/11(水) 08:52:40ID:???
この手のデータ、CSVではき出してくれるだけでいいのにな。何でそんな簡単なこともキャリアはしてくれないんだろうな。
0133nobodyさん2009/03/11(水) 11:25:09ID:???
俺はCPANにあるモジュール使ってすべてのキャリアのIPアドレス帯域をファイル吐き出すプログラムを作って
それをCRONで回してつかっているのだが
0134nobodyさん2009/03/11(水) 11:40:43ID:???
>>132
んなもんいらね
0135nobodyさん2009/03/11(水) 11:56:39ID:???
公式サイトやってて、要らないわけがない。
0136nobodyさん2009/03/12(木) 00:31:10ID:???
公式でも、UA偽装だけで見れるサイトもたくさんあるよ。
0137nobodyさん2009/03/12(木) 01:59:57ID:???
topページだけIPアドレスで制限してるアホな処もあったからなあ。
0138nobodyさん2009/03/12(木) 17:05:25ID:???
イーモバのIPアドレスの公開ページに、embとEMnetの違いや公開してるIPアドレスはEMnet用で
emb用は非公開、云々の説明が追加されてた。

当初からそうだったが、イーモバのネット関係の情報公開は結構マジメで玄人っぽいよな。
それに比べると日本通信なんかド素人っぽい感じがするし。
0139nobodyさん2009/03/12(木) 19:23:23ID:???
これってIPアドレスとかで何か不都合が出そうかな?

一応、今のところ日本通信用のIPアドレスも別途管理はしているが、更に鬱陶しい事に
ならなければ良いが、どうなんだろう。

“レイヤー2接続”が生む高い付加価値――日本通信が「Doccica」で挑む新MVNOビジネス
http://plusd.itmedia.co.jp/mobile/articles/0903/12/news022.html
0140nobodyさん2009/03/13(金) 16:19:08ID:???
ただ稼ぎたいだけなら、いろいろ考えなくても
レンタル掲示板でこんなあぷろだでもやってれば稼げるんでね?

ttp://res.atura.jp/bbs/res/bbsno/36698/threno/5994549
0141nobodyさん2009/03/16(月) 20:58:48ID:8rUGOGFT
ホストでアクセス制限ってどうかな
一応IPアドレスでの制限も別サイトで稼動させてて使えるんだが、
BBSの書き込み制限はそれを使うとして、
表示制限の部分だけホストでの制限を試してみようと思うんだが
逆引きは常にやってる鯖なので無問題
ホストの偽装に現実に出会った人いる?
また、逆引きできないなんてあったとしても1年に1回ぐらいの無視できる回数だよね?
0142nobodyさん2009/03/17(火) 16:50:51ID:???
一応キャリアのサイトには逆引きは保証しないって書いてあるけれど・・・

ライトなサイトであればホストでの制限でも別によいのでは?と思う。
0143nobodyさん2009/03/17(火) 22:06:03ID:???
うちはUA確認かIP確認の2択だ
逆引きとか中途半端で負荷のかかる事は選択肢に無い
0144nobodyさん2009/03/18(水) 01:29:54ID:???
>>141
なりすましメールのためにキャリアの逆引き設定されてるような、
そういう特定アジアのどうしょうもないIPが開放されると思うと
普通に考えて怖くないの?
0145nobodyさん2009/03/19(木) 16:14:16ID:???
なんかauのサイトでいつのまにかPCサイトビューワ用のIPアドレス頁が追加されてるな。

3/10の時点では無かった筈だが、リンク元のEZサーバ用の日付は3/10のままだけど、これで
やっとdocomoやSBと同等になったなあ。

あとWillcomのIPアドレスが本日付けで、又2個削除されてた。ユーザーが想定より増え
なかったせいか? (藁
0146nobodyさん2009/03/20(金) 17:19:25ID:???
>>145
でもPCサイトビューアのUserAgentは公開されてないみたいだから、正規に公開してるdocomoや
SBと同等になったとは言いがたい。
0147nobodyさん2009/03/22(日) 10:53:20ID:0XyV+hxh
絵文字を3キャリアで出力するのって、
$flowerっていう変数に対して
キャリアごとに各絵文字出力のタグを割り当てるのがセオリーなの?

if($career = "docomo"){$flower = "ドコモの絵文字書き出し";}
else if($career = "au"){$flower = "auの〜";}
else if($career = "softbank"){$flower = "sbの〜";}

って感じで。。
もっと賢いプラグインとかモジュールってありますか?
0148nobodyさん2009/03/22(日) 16:22:15ID:???
>>147
最終的にはそういう処理をするけど、同じ事をする絵文字変換用のライブラリが
各言語ごとに絶対あるから探して利用するといいよ。

それから、テンプレートエンジンを使用して、絵文字の表記は
1つのキャリアの絵文字を書くだけにするほうがいいよ。
たぶん、ドコモの16進数表記をテンプレートに書いて、
画面表示の時にUserAgentに応じて、絵文字変換&文字コード変換を行う
というパターンが多いんじゃないかな。

最近PHP使ってないけど、以前はMobilePictogramConverterとSmartyでやってた。
最近はRuby(Rails)を使っているんだけど、こっちはjpmobileというプラグインでやれる。
0149nobodyさん2009/03/22(日) 21:55:18ID:0XyV+hxh
>>148
うおー、すごく丁寧なアドバイスありがとうございました!
参考にして頑張ります!
0150nobodyさん2009/03/24(火) 21:02:49ID:QifOBF6u
あ
0151nobodyさん2009/03/24(火) 21:06:48ID:QifOBF6u
みすった。
掲示板に書き込みがあったらスレッド主にメールを送るプログラムを作ったのですが
クライアントがformでメールアドレスをサーバに送る時、SSLを利用すべきか迷っています。
メールアドレスを送る時、一緒に送るデータはHN、タイトル、コメントです。
皆さんだったらどうしますか?よろしくお願いします。
0152nobodyさん2009/03/24(火) 22:12:14ID:???
>>151
2chでもSSLなんて使ってないけどどう思う?
あと、よく見る「このページを友達に知らせる」みたいな機能もSSLなんてかませてないし
俺だったらそこまで気を回さないな、、
0153nobodyさん2009/03/24(火) 23:37:07ID:QifOBF6u
確かにそうですね…
使わない方向でいこうと思います。ありがとうございました。
0154nobodyさん2009/03/25(水) 21:15:36ID:LXbBKXNm
PC/mobile両対応のサイトを作成しています
内部コードUTF-8,PCの表示はUTF-8,mobile表示はSJIS-winです
そこで疑問があるのですが、
「UTF-8にあってSJIS-winにない文字」の処理は
どうやるのがセオリーなのでしょうか?
0155nobodyさん2009/03/25(水) 22:11:39ID:???
使わない。
0156nobodyさん2009/03/25(水) 22:17:24ID:???
PCでユーザに入力された文字を
mobileで閲覧できるようにするときはどうします?
0157名無し募集中。。。2009/03/25(水) 22:36:45ID:J1npucsm
入力チェックで弾くがなそんなの
ダメ文字は優しく置換してあげる
プログラム組むの面倒ならiconvでUTF8からMS932にしてやれば一発
0158nobodyさん2009/03/25(水) 22:51:22ID:???
>>154
mobileってのが携帯電話のことなら、そっちもUTF-8で良いんじゃない?
表示出来無い文字は表示出来ないんだし。
0159nobodyさん2009/04/07(火) 01:05:22ID:???

携帯サイトのWebプログラムを語ろう Part2

924 :nobodyさん:2009/01/05(月) 10:49:43 ID:???
auは今月から4月まで毎月IP追加あり
公式持ちには告知済みだけど


釣られたか
0160nobodyさん2009/04/08(水) 22:47:58ID:fzKk45P9
IPからキャリアを調べる関数作ってみたんだけど
お前らはどうやってんの?

$IPList = <<< __EOD__

i 210.153.84.0/24

j 123.108.236.0/24

e 210.230.128.224/28

__EOD__;

function carrier(){
 global $IPList;
 $ipc='p';
 $ipr=array(long2ip($ipl=ip2long($_SERVER['REMOTE_ADDR'])).'/32'=>true);
 for($i=31;$i>=24;$i--)$ipr[long2ip($ipl&-pow(2,32-$i)).'/'.$i]=true;
 foreach( explode("\n",$IPList) as $val ){
  if(preg_match( '/^(\w)[\t ]+((\d+\.){3}\d+\/\d{2})/',trim($val),$m)&&isset($ipr[$m[2]])){$ipc=$m[1];break;}
 }
 return $ipc;
}
print carrier();
0161nobodyさん2009/04/08(水) 22:52:35ID:???
>>160
gethostbyaddr()
0162nobodyさん2009/04/09(木) 01:20:05ID:???
>>160
ip2longとかpregとかちょっと重いんじゃね?

あと、行数減らしたいだけならもっと徹底的にやれば?ちょっと見るだけでも短くなるが

function carrier($IPList){
 for($ipr=array(),$ipl=ip2long($_SERVER['REMOTE_ADDR']), $i=32;$i>=24;$i--)
  $ipr[long2ip($ipl&-pow(2,32-$i)).'/'.$i]=true;
 foreach( explode("\n",$IPList) as $val )
if(preg_match( '/^(\w)[\t ]+((\d+\.){3}\d+\/\d{2})/',trim($val),$m)&&isset($ipr[$m[2]])) return $m[1];
 return 'p';
}
print carrier($IPList);
0163nobodyさん2009/04/09(木) 01:22:00ID:???
>>161
逆引きは信用ならんだろ
0164nobodyさん2009/04/09(木) 09:20:17ID:???
キャリアを信用ならんとなw
0165nobodyさん2009/04/09(木) 23:48:12ID:???
DNSの仕組みをもうちょっとお勉強しましょうね
0166nobodyさん2009/04/09(木) 23:57:43ID:???
IPは信用ならんだろ
0167nobodyさん2009/04/10(金) 07:19:13ID:???
全てが信用できませんY(>_<、)Y
0168nobodyさん2009/04/10(金) 14:25:57ID:???
TCPでちゃんと返事が来るIPなら、信用出来るだろ
0169nobodyさん2009/04/10(金) 14:34:18ID:???
あ、インターネットまでの経路に虫とかは勘弁な
0170nobodyさん2009/04/10(金) 14:42:06ID:???
この流れ、ほとんど解読不能なんだけど
わかってるふりとか意味ないから、やめときなよ
0171nobodyさん2009/04/10(金) 16:51:13ID:???
お前が理解できてないことは、よっくわかってるから
安心して
0172nobodyさん2009/04/10(金) 23:52:04ID:???
暇なんで、理解に役立つかもしれないURL張っとくわ

http://ja.wikipedia.org/wiki/%E9%80%86%E5%BC%95%E3%81%8D
>逆引きで返ってくる結果は所詮は自称にすぎないので、
シンガポールのネットワークから「私の逆引き名は docomo.ne.jpです」って言いながらアクセス可能

http://ja.wikipedia.org/wiki/SYN_flood
>接続元アドレスは通常すべて異なるアドレスに偽装されているので、
パケット投げる時の自分のIPは自称なので、信用できません

http://www.asahi-net.or.jp/~AA4T-NNGK/ipttut/output/tcpconnections.html
行って来いして初めて通信確立となるのがTCP
なので、基本的にIPを詐称したパケットの返事はどっかに行ってしまう
返事が無いのでsyn+ackが確立できないからTCP通信できません

http://herald.jugem.jp/?eid=67
http://blog.hitachi-system.co.jp/02/845.html
http://memo.hirosiki.jp/article/99047461.html
でも、デフォルトゲートウェイが詐称されると、どんなパケットだろうとも嘘言われちゃう
ハウジングの隣のサーバーは何する人ぞww
0173nobodyさん2009/04/11(土) 00:18:49ID:???
逆引きはプロバイダから DNS の権限委譲さえあれば誰でも自由に名乗れるからな
ezweb.ne.jp とかも勝手に名乗れるし、違法でもなんでもない
0174nobodyさん2009/04/11(土) 00:21:50ID:???
IPアドレスはこの目的なら信用して差し支えないレベル
0175nobodyさん2009/04/11(土) 01:26:52ID:???
REMOTE_ADDRで携帯か判断してるんだけど
これは信用できますか?><
0176nobodyさん2009/04/11(土) 03:28:58ID:???
IPは信用ならんだろ
0177nobodyさん2009/04/11(土) 04:01:58ID:???
>>176

>>172を読みました

「携帯からのアクセス時のみページを表示する」
と言う動作をさせたい場合に、
REMOTE_ADDRのみを判断材料にするのは
問題ありませんか?><
0178nobodyさん2009/04/11(土) 04:52:25ID:???
>>177
>>174
0179nobodyさん2009/04/11(土) 06:02:06ID:???
>>177
>>166
0180nobodyさん2009/04/11(土) 07:09:15ID:???
172が言うような類は、今なら全部FWで落ちるよw
01811772009/04/11(土) 08:15:34ID:???
>>180

なるほど><
世の中の流れが俺に合ってきてると言うことですね><
0182nobodyさん2009/04/11(土) 21:30:25ID:MJPWjUnv
携帯のキャリアIPアドレス帯域ごとに
Apache/httpd.confのsetenvifで環境変数を設定したいときはどうしてますか?
CIDR形式とか使えないようなので第三オクテットまでで判別するとかいうサイトを見つけたんだけど、
それでいいのか
それとも正規表現で抜き出すべきなのか
単にアクセス制限だけじゃなくて、絵文字変換の処理もあるので、
キャリア振り分けの結果を環境変数に入れてスクリプト側で取得したい
■ このスレッドは過去ログ倉庫に格納されています