トップページ⇒php
992コメント277KB

【PHP】下らねぇ質問はID出して書き込みやがれ 139©5ch.io

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん 転載ダメ©2ch.net2015/01/05(月) 15:56:07.51ID:???
質問者はまず>>1を良く読むこと(必須!)
過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。

◆前スレ
【PHP】下らねぇ質問はID出して書き込みやがれ 138
http://kanae.2ch.net/test/read.cgi/php/1414427135

◆質問用テンプレ
【OS名】CentOS
【PHPのバージョン】5.5
【連携ソフトウェア】MySQL ImageMagick
【質問内容】

◆質問する時の注意
・ スレを上げて自分のIDを表示させること。(メール欄に何も記述しない。専ブラのsageチェックを外す)
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に関連リンクの公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
(PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。)

◆質問後の注意
・2回目以降は最初に質問した際のレス番号を入れて、偽者防止に必ずIDを表示させること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)

◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。

【その他諸注意】
・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
0077nobodyさん2015/01/29(木) 02:31:36.81ID:0JNlRH9V
>>74
>>76
ありがとうございます。
ユニークIDを埋め込んでみたら二重POSTを防ぐことができました。
0078nobodyさん2015/01/29(木) 07:28:28.46ID:???
DBのテーブルのようなところに格納されておらず比較もできない状態で
そういう意味で重複時のリジェネレートが必要でない
1発で完全なユニークIDを作成する方法ってあるんだろうか
0079nobodyさん2015/01/29(木) 09:39:52.62ID:???
IDも出さずに質問
また荒らしか
0080nobodyさん2015/01/29(木) 12:23:12.40ID:???
>>78
IDの空ファイル作れ。
is_fileとか使えばIDが生成されているかどうか分かる。
0081nobodyさん2015/01/29(木) 15:41:21.64ID:???
>>78
あるよ

>>80
どっからどう見ても再生成が必要な例を挙げてしまうほど読解力のない回答者さんこんにちは。
0082nobodyさん2015/01/29(木) 17:58:28.59ID:???
ない
最大長が存在する限り天文学的な確率になっても被る可能性はある
かといって無限な実装は無理
0083nobodyさん2015/01/30(金) 00:43:13.82ID:???
現実的に最大長に達するかどうかの検討をせずに突き進むタイプかー。
そうだねないね
0084nobodyさん2015/01/30(金) 07:32:23.26ID:???
素直に連番を振るのであったw
0085nobodyさん2015/01/30(金) 07:52:02.85ID:???
現実的どうこう言う前にあるよと断言してる凄さには突っ込まないのか
0086nobodyさん2015/01/30(金) 12:26:53.08ID:???
>>85
断言してるわりに具体例出さないから誰も突っ込まないだけ
0087nobodyさん2015/01/30(金) 13:27:57.23ID:???
1台のマシン前提でいいなら普通にできるから特に
0088nobodyさん2015/01/30(金) 15:42:37.56ID:???
記憶だめ 比較だめ 再生成だめ
0089nobodyさん2015/02/02(月) 18:43:56.09ID:???
質問すんません。
AサーバにBサーバのphpスクリプトをiFrame内に読み込んだ場合
スクリプトを実行するのはAサーバですか? それともBサーバですか?
0090nobodyさん2015/02/02(月) 18:55:51.25ID:???
普通に考えればわかること
0091nobodyさん2015/02/02(月) 18:58:04.57ID:???
・・・ですよね。でもわからないから聞いてます
0092nobodyさん2015/02/02(月) 18:59:14.68ID:???
外部サーバじゃなくて、普通にincludeならそのサーバになりますが
iFrameでsrc="script.php"とした場合、どうなるのかと
0093nobodyさん2015/02/02(月) 19:09:44.23ID:???
そのスクリプトはFormを作成してPOSTするものなんですが
action属性を空白にしているのに、そのまま機能してるみたいなんですよね。
POSTするとき、Bサーバに問合せてることになりますよね。

さっき、何もせずに外部サーバのiFrameに読み込ませたら機能してビックリしたんです。
これが可能なら、yahooのTopページを読み込んで、偽Yahooとか出来る事になりますよね。
0094nobodyさん2015/02/02(月) 19:26:31.68ID:???
それyahooそのものじゃね?
0095nobodyさん2015/02/02(月) 19:53:10.12ID:???
中身はそのものですよね。URLは違うけど。
それにしてもDBにまで登録できてしまうとは驚きです
0096nobodyさん2015/02/02(月) 19:58:41.11ID:???
クロスドメインになるのでそれに対してスクリプトでどうこうは出来ないよ
0097nobodyさん2015/02/02(月) 20:19:23.67ID:???
>それにしてもDBにまで登録できてしまうとは驚きです

単にそのページのPOST機能でPOSTデータを登録してるに過ぎないんじゃないの。
つーか他所から別の箇所にPOSTできるのは普通だよ。
だからCSRFとか問題になるんだし。
0098nobodyさん2015/02/03(火) 01:56:10.50ID:???
うーむ・・・。自分のサイトの問い合わせフォームが勝手に外部ファイルとして読み込まれて、
スパム投稿につながる可能性ありますよね。。。。気が付かなかったなぁ
0099nobodyさん2015/02/03(火) 03:14:32.99ID:???
年代的に知らないのかもしれないから書いとく。
はまちちゃんでぐぐったら?
0100nobodyさん2015/02/03(火) 09:44:16.65ID:???
だから今はHTTPSが重要なのよ。
今のブラウザなら鍵の持ち主のステータスバーへの表示まであるし。
0101nobodyさん2015/02/03(火) 10:58:45.11ID:???
>>100
この場合EV証明書は関係ねーよ
防ぐ手立てはちゃんとあるだろ・・・そんなことも知らないの?
0102nobodyさん2015/02/03(火) 12:36:59.32ID:???
思いつく方法はrefererとかですけど、
refererを吐き出さない時があるので結構複雑ですね。
referer以外にFormを設置したURLを知る方法ってあるんですかね?
0103nobodyさん2015/02/03(火) 13:15:36.58ID:???
>>102
ない。
だから、普通はワンタイムトークンを実装する。
0104nobodyさん2015/02/03(火) 13:18:13.64ID:???
>>102
15年遅れてないですか?
業者さんならPHP屋さんをやめたほうがいいですし
これからの人なら本でも買ってください
0105nobodyさん2015/02/03(火) 13:18:27.48ID:???
>>103
?
0106nobodyさん2015/02/03(火) 14:30:51.28ID:???
別に外からポストされたって問題ないだろ。
それで困るケースを考えて、そのケースの対応をしろよ。
0107nobodyさん2015/02/03(火) 16:56:37.54ID:???
>>102
CSRF対策でググれ
0108nobodyさん2015/02/03(火) 17:27:34.22ID:???
質問者の疑問については>>96で終わってる話だと思うが。

>>101の「防ぐ手立てはちゃんとある」がかなりツボ
0109nobodyさん2015/02/03(火) 17:28:38.06ID:???
>>108
もっと勉強しなさい
0110nobodyさん2015/02/03(火) 17:30:36.40ID:???
>>109
もっかい>>89から質問者の疑問を見直してみたら?
0111nobodyさん2015/02/03(火) 17:32:39.51ID:???
CSRFの話に持っていってるレスは全部的外れな。
0112nobodyさん2015/02/03(火) 17:32:49.54ID:???
>>110
無知乙
0113nobodyさん2015/02/03(火) 17:35:08.40ID:???
96 nobodyさん sage 2015/02/02(月) 19:58:41.11 ID:???
クロスドメインになるのでそれに対してスクリプトでどうこうは出来ないよ


↑
少しググれば簡単にわかることなのにそれもわからない奴がいるんだなぁ
0114nobodyさん2015/02/03(火) 18:07:17.87ID:???
※ID出さない質問には的外れな回答しかつきません
0115nobodyさん2015/02/03(火) 18:24:06.56ID:???
>>111
無知乙
0116nobodyさん2015/02/03(火) 20:24:46.61ID:???
>>111
質問者のケースは厳密にはCSRFではないけど、
対策はCSRFと同様のものが有効だろう。
0117nobodyさん2015/02/04(水) 00:20:30.26ID:???
>>116
ワンタイムトークンがどう解決に役立つというの
0118nobodyさん2015/02/04(水) 12:56:03.23ID:???
元の質問から意図が変わってきてないか。

ページA: iframeを実装したページ
ページB: iframeで組み込まれるページ

としたときに、Bで作ったフォームがどこからでも組み込まれて
しまうじゃんっていうのが元々の意図でしょ。
クリックジャギングでよくある話。
これを対策するのはCSRF対策じゃなくて、X-Frame-Optionsヘッダとかそのあたり。

CSRFが必要なのは、BにPOSTするページCが外部に作られる場合で
ワンタイムトークンが当然有効。

前者と後者区別がついていないと議論がつかない。
元々の質問者の意図は前者。
0119nobodyさん2015/02/04(水) 13:04:54.30ID:???
あーあー空気読めない馬鹿が答え言っちゃった

あと、CSRFは併用な
0120nobodyさん2015/02/04(水) 13:10:34.67ID:???
空気読めない馬鹿が無知乙連投してたかと思うと
0121nobodyさん2015/02/04(水) 13:13:06.07ID:???
みんなID出して質問してないのを分かってて答えてるのに
ドヤ顔で解説し出す低脳>>118
0122nobodyさん2015/02/04(水) 13:22:47.44ID:???
>>121
無知乙
0123nobodyさん2015/02/04(水) 13:25:20.26ID:???
元の質問から意図が変わってきてないか(キリッ
0124nobodyさん2015/02/04(水) 13:31:38.29ID:???
CSRF対策でいまだにRefererヘッダを使ってる奴はウンコw
0125nobodyさん2015/02/04(水) 13:38:45.29ID:???
いまだにっていうか最初からないだろ
はまちちゃん事件前から偽装とか普通だったわ
0126nobodyさん2015/02/04(水) 14:17:16.63ID:???
X-Frame-Optionsって一言書くだけで終わった話題なのに
0127nobodyさん2015/02/04(水) 14:30:35.91ID:u4gfvtPr
性格悪いのが何人かいるな
0128nobodyさん2015/02/04(水) 15:08:09.02ID:???
>>127
このスレは初めてか?

>>126
よかったね勉強になったね
0129nobodyさん2015/02/04(水) 16:19:19.43ID:???
二日もかける話題かよ
0130nobodyさん2015/02/04(水) 16:56:14.85ID:???
>>125
そう、あれは地球病に困っていたころ
0131nobodyさん2015/02/04(水) 18:07:08.67ID:???
IDも出さない質問者にまともな解答はしません
0132nobodyさん2015/02/04(水) 18:24:15.43ID:???
X-Frame-Optionsのこと知らなかったくせにw
0133nobodyさん2015/02/04(水) 18:26:35.36ID:???
知らなかったのは>>96だろ
とっくの昔から使用してるし、こんな常識レベルを知らない奴がいる方に驚きだわ
0134nobodyさん2015/02/04(水) 18:30:20.94ID:???
あと>>100も知らないな
馬鹿が解答してるのを面白おかしく眺めるスレだったのに
更なる馬鹿がドヤ顔単芝でマジレスする見てて恥ずかしい痛いスレになったな
0135nobodyさん2015/02/04(水) 18:34:32.68ID:???
CSRFがどうこう言ってた奴も知らないな
0136nobodyさん2015/02/04(水) 18:37:09.18ID:???
こんなスレ立てるのが悪い
0137nobodyさん2015/02/04(水) 20:26:43.00ID:???
CSRFの話に持ってった人が顔真っ赤にしてる様子しか想像できないんだけど、
やっぱそういう事態を避けるためにもID付きのほうがいいね。冤罪だったらかわいそうだもの。
0138nobodyさん2015/02/04(水) 20:48:53.33ID:???
CSRFも大事だけどな
外部サイトから操作されたくないなら両方使うのが正解なわけだし
0139nobodyさん2015/02/04(水) 20:49:37.73ID:???
あ、>>138はiframeからじゃなくて直接POSTされるって意味ね
0140nobodyさん2015/02/04(水) 21:12:56.95ID:???
CSRFとか言ってたのは自分です。
正直、「クリックジャッキング」とか知らなかった。
間違った発言をしてすみませんでした。
0141nobodyさん2015/02/04(水) 21:13:39.25ID:???
うむ、もっと調べてから発言しなさい
0142nobodyさん2015/02/04(水) 21:15:02.34ID:???
気にすんな。俺もクリックジャギングなんて知らなかったよ
0143nobodyさん2015/02/04(水) 21:17:06.83ID:???
>>138
誰も大事じゃないなんて言ってないよ。どうしたの?
0144nobodyさん2015/02/04(水) 21:19:37.18ID:???
>>143
CSRFは的外れって馬鹿なレスしちゃった君かな?
両方大事です
0145nobodyさん2015/02/04(水) 22:56:18.93ID:???
>>144
今回の条件においてCSRF対策が役に立つのはどのあたりでしょうか
0146nobodyさん2015/02/04(水) 23:24:07.94ID:???
まともに説明するやついないから、自分で調べたほうがいいでwwww
このスレは荒らしが荒らすと前スレで宣言してから立てた荒らしスレやからな
0147nobodyさん2015/02/04(水) 23:34:38.74ID:???
>>146
助け舟がないからってそんな態度変えなくても
0148nobodyさん2015/02/05(木) 13:39:17.35ID:???
WebProgのセキュリティに関しては自分で調べないとだめ
ちゃんとした仕組みや実例なんかは数レスで説明出来るものじゃない
IBMのKnowledge Centerあたりがおすすめ
IPAはあまり
0149nobodyさん2015/02/05(木) 14:32:41.75ID:???
徳丸本でいいだろ
0150nobodyさん2015/02/05(木) 14:53:41.82ID:???
宣伝乙と言われたいのか?
0151nobodyさん2015/02/05(木) 15:18:21.76ID:???
>>150
Webで断片的知識を入れるより、書籍一冊の方がいいんだよ。
徳丸本を超えるものある?
0152nobodyさん2015/02/05(木) 15:21:41.71ID:???
このスレらしく、とりあえず否定してるだけじゃないのかな
0153nobodyさん2015/02/05(木) 15:27:51.91ID:???
>>145
今回のはもともと質問者はスパムを心配してるんだから
ユーザーの意図しない投稿とは違うんでどれも役に立たないでしょうね
0154nobodyさん2015/02/06(金) 11:22:58.56ID:???
try/catchってどれくらい使ってる?
全体をtry/catchで囲う人もいれば、Fatal Errorのみに使う人もいるし
全く使えねーって否定的な人もいるみたいだし。
皆の意見が聞きたい
0155nobodyさん2015/02/06(金) 11:24:10.19ID:???
>>1
0156nobodyさん2015/02/06(金) 11:28:30.78ID:???
catchして個別に処理やりたきゃ使うし、そうじゃなきゃ使わなくていいんじゃね?
0157nobodyさん2015/02/06(金) 12:14:39.42ID:???
そう・・
何か、PHPがtry/catch使ってほしそうな気がして
将来的に使ってないと困ることになるのかな?とか心配になっちゃって
0158nobodyさん2015/02/06(金) 12:15:34.54ID:???
徳丸といえば、つい先日大垣(PHP strict sessionsの人)を公開処刑してたな
0159nobodyさん2015/02/06(金) 14:25:42.25ID:???
try catchはfinallyを使いたくなるw
0160nobodyさん2015/02/06(金) 15:29:13.51ID:???
「第一回 プログラム言語対抗綱引き」

http://portal.nifty.com/2015/02/05/b/img/pc/000.jpg

「PHPがdisられる時代は終わった〜っ! いくぜおまえら〜!」「PHP!」「PHP!」
(PHPはこの後一回戦で敗退しました)


※尚、優勝はGo、準優勝はCだった模様

 
0161nobodyさん2015/02/06(金) 15:29:51.37ID:???
誤爆スマン
0162nobodyさん2015/02/06(金) 17:03:48.66ID:???
>>159
へぇ・・それどんなに美味しいの?
俺、今までtry/catchなんていらないと思ってたけど、
今日使い始めて、まあまあ使えるかな?と思い始めた
でも、エラー出力用の関数は以前から自作してたんだよね・・移行するべきかどうか悩んでる
0163nobodyさん2015/02/06(金) 18:06:16.11ID:???
見通しが良くなる
0164nobodyさん2015/02/06(金) 18:20:37.69ID:???
エラー起こったら、ログはいてエラーレスポンス返すだけだから、特に使う意味ないと思うけど。
0165nobodyさん2015/02/06(金) 18:21:19.78ID:???
使うとしたら、データベースのトランザクションのとこくらいかな。
0166nobodyさん2015/02/06(金) 21:17:38.27ID:???
わざわざPHPのエラーで例外とか使わねえよ
最初から用意されてる例外ならともかく
PDOExceptionとかな
0167nobodyさん2015/02/07(土) 02:38:50.61ID:???
そうそう、PDOのExceptionで俺も使い始めたんだよね
他の言語は例外が最初から組み込まれてるのが多いんだってね
0168nobodyさん2015/02/07(土) 02:42:34.71ID:???
ってことはPHPは例外が最初から組み込まれてないってことですか
0169nobodyさん2015/02/07(土) 07:00:11.38ID:???
tryは入れ子に使い始めるとインデントが右に伸びていって使いづらいw
変数や参照の生存期間とリソースがつかまれている期間の関係も謎過ぎて
finallyも使いづらい。

結局PDOのthrownをcatchしてロールバックかけるだけのオチw
0170nobodyさん2015/02/07(土) 12:46:23.60ID:???
>>168
そういうことらしいよ
OOP勉強してたら、そう書いてあった
他の言語なら普通に例外を投げてくれるのに・・・ッて書いてあったよ
0171nobodyさん2015/02/07(土) 12:50:34.16ID:???
>>169
>tryは入れ子に使い始めるとインデントが右に伸びていって使いづらいw

そうそう、そこなんだよね。
Exceptionだ付け加えたいのに、Tryも入れないとダメなんだよね。
この辺、他の言語はどうなってるんだろうね?
0172nobodyさん2015/02/07(土) 12:58:43.53ID:???
OOPにこだわりたいならJavaぐらい触っとけよ
0173nobodyさん2015/02/07(土) 19:14:55.64ID:???
>>170
組み込まれてるっていうのはそういう意味で、か。
逆に考えればいいじゃん。標準ライブラリはすべて例外安全だと。
0174nobodyさん2015/02/07(土) 19:36:50.08ID:???
>>173
というか、標準で自動的にthrowされるかどうか
PDOExceptionは自動でthrowされるみたいに
色々自動で投げてくれたらキャッチ出来て便利じゃね
0175nobodyさん2015/02/07(土) 19:45:34.65ID:???
>>174
だから例外安全なライブラリだと思えばなんてことはないじゃんって書いたんだが。
0176nobodyさん2015/02/07(土) 20:17:53.48ID:???
大体、スローするクラスを触りたくないもんw
継承なんてもってのほかw
0177nobodyさん2015/02/08(日) 02:24:44.67ID:???
>>175
安全じゃなくね?
真っ白画面とかあるわけだし
■ このスレッドは過去ログ倉庫に格納されています