決められたwindowを開きたいです。 - PHPプロ!Q&A掲示板

2856

  • 0P

決められたwindowを開きたいです。

質問日時 / 2010年9月6日 18:13 (最終編集:9月6日 18:16)    回答数 / 1件

Questioner:  daizi_k  このエントリーをはてなブックマークに追加 

キーワード / twitter    header    target   

初めて質問させて頂きます。

いま、twitterでoauth認証した後、
投稿するプログラムを作成しています。

その時に、始めのページから認証画面を開く必要があるのですが、
認証画面を、別のウィンドウで開き、
さらに認証が終わったときに、
元のウィンドウ(一番始めに開いたウィンドウ)に、
戻ってユーザーに閲覧を続けてもらえるような仕組みを考えています。


connect.php

redirect.php //ここで、別ウィンドウを開きます。

twitterのapiへ

callback.php

index.php //ここで、connect.phpを開いていたウィンドウに戻ってきます。


認証画面を別ウィンドウで開くのは、
htmlからtargetを指定したのですが、
認証完了後に、元の親ウィンドウに戻ることができません…。


callbackで、header(location:"./callback.php")を指定して、
ページを推移するのですが、
何かウィンドウを指定できるパラメーターなど、
ありますでしょうか?
また、もしjavascriptと連動させなければならない場合、
どうやって呼び出せばいいでしょうか?


ソーズコードは、twitter公式のphpコードの
http://github.com/abraham/twitteroauth
を使っています。

宜しくお願い致します。

この質問への意見の募集は締め切られ、ポイントは既に配分されました。
意見を投稿することはできますが、ポイントを受け取ることはできません。



ツリー一覧

┗A01pannna# ajaxで非同期通信でやればいけるのかも?な気もしま

回答一覧

並び替え:

A01
answererpannna [9月6日 18:53] (最終編集:9月6日 18:58)

# ajaxで非同期通信でやればいけるのかも?な気もしますが
# ajax嫌いなので分かりません(汗

javascriptのみでやろうとするとちょっと大変かと思います。

callback.phpでダミーのhtml(ウィンドウ)を開いて、
onloadイベントで親ウィンドウをアクティブにしつつ認証画面のウィンドウと
ダミーのウィンドウを閉じるみたいなやり方でいけるのではないかと思います。
ただ、ウィンドウ名が関係ない他のウィンドウとかぶってたりしたら大惨事になりかねませんが…

以下個人的な感想なのですが、
どちらにしろtwitterで投稿するにはoauth認証が必要ですし、
閲覧画面に「ログイン前にはログインのIDとパスワード入力する欄を表示、ログイン後は出さない」
みたいな仕様のほうがいい気もします。
popupなんてブラウザでいくらでも抑制出来てしまいますし、popupを好まないユーザが結構いる
現状を考えるとどうなのかなーなんて思ったりします。

この意見に回答する

ツリーへ TOPへ

<<質問一覧へ



Pick Up Q&A

Q
PHPのHTML埋め込み記述について
 このエントリーをはてなブックマークに追加 
A
$_POST["data"] == "男" ? $val = "checked" : $val = "" ; の意味は以下と同じです。 if($_POST["data"] == "男"){ $val = "checked; } e...

>>続きを読む

kende様のご指摘通り、三項演算子を使用する際には、コードの複雑度などを考慮する必要がありますね。書きやすさと共に可読性も追求したいところですね。

▲解説者:岡本(アシアル株式会社 教育コーディネーター兼 システムエンジニア)