2ちゃんねる スマホ用 ■掲示板に戻る■ 全部 1- 最新50    

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

1 :nobodyさん:2015/01/05(月) 15:56:07.51 ID:???.net
質問者はまず>>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等)・フレームワークは各該当スレへ

2 :nobodyさん:2015/01/05(月) 15:57:02.81 ID:???.net
避難スレ(荒らしが来てる場合はこちらに)
http://peace.2ch.net/test/read.cgi/tech/1418738547/

関連リンク
■本家マニュアル   http://www.php.net/manual/ja/
■日本PHPユーザ会 http://www.php.gr.jp/
■PEARマニュアル  http://pear.php.net/manual/ja/
■メーリングリスト   http://ml.php.gr.jp/mailman/listinfo/
■ZFマニュアル    http://framework.zend.com/manual/ja/
■Smartyマニュアル  http://www.smarty.net/manual/ja/

(以下英語)
■Zend本家      http://www.zend.com/
■Zend Framework  http://framework.zend.com/
■php | architect   http://www.phparch.com/
■Smarty       http://www.smarty.net
■Smartyマニュアル http://smarty.php.net/manual/en/
■PECL本家(英語) http://pecl.php.net/

3 :nobodyさん:2015/01/05(月) 15:57:32.41 ID:???.net
【簡易FAQ】
1.文字コードは何を使えばいいの?
 →1.UTF-8 2.EUC-JP のどちらか。迷うようなやつはShift_JISは使っちゃダメ。
2. このスレに書き込むときに自分のサイト名を晒したくない
 → http://example.com/が例文などのために予約されている。hogehoge.comは使っちゃダメ。
3. ブラウザに何も表示されないんだけど・・・
 → Apacheの設定を見直せ。ファイルの拡張子は何にしてて、その拡張子でPHPを呼ぶようになっているか?
4. 記号の意味がわからないけどググりようがない
 → 「@」 エラー表示を抑制、「->」 オブジェクトのメンバにアクセス、「::」 静的なメソッド呼び出し、
  「==」は暗黙の型変換をしてゆるい比較、「===」は型情報も含めた厳密な比較
5. echo "$arr['hoge']['fuga']"; と書いたらエラーになった
 → {おっぱい括弧}でくくって"{$arr['hoge']['fuga']}"にする
6. 一定時間ごとに自動的に何かしたいんだけど
 → cronかタスクスケジューラを使え。
7.extractって危険なの?
 →変数上書き&初期化忘れなどで危険。楽だからという理由だけで安易に使わない。
8. include/requireに「〜.php?a=b&c=d」のようなパラメータをつけたい
 → URL呼び出しなら可能だけど、普通のファイル呼び出しではできません
9.include/requireでURLを指定しても何も起きない
 → .phpの拡張子のファイルをURLで呼び出すと、1度PHPプログラムとして実行された結果になる。
10. そもそもインストールの時点でうまくいかない
 → 確認すべきはPHPのconfigureの引数、php.iniの内容と置き場所、
  Webサーバの設定(Apacheならhttpd.conf)、起動&再起動あたり

4 :nobodyさん:2015/01/05(月) 15:58:08.26 ID:???.net
11. SQLの質問はどこで?
 → データベース板に誘導されるのが嫌ならPHPにうまく関連させて質問する
12. 文字列のなかに、英字のみとか数字のみとか記号が入っちゃいやんとかはどうしたらいいの?
 → ctype_〜()が手軽。複雑なパターンはpreg_〜()あたりで正規表現を使う。
13. $a1, $a2, $a3 ... のような変数名をうまく扱いたい
 → 可変変数で実現できるけど、むしろ配列を使って$a[1], $a[2], $a[3]等とするのがベター
14. echoとprintってどう違うの?
 → よく議論される話題であるが基本的に両者とも同じ。 以下ちょっとした議論。
  http://www.faqts.com/knowledge_base/view.phtml/aid/1/fid/40
15. クッキーの情報をユーザから隠したい
 → セッション使え。ただしクッキーとセッションは仕組みが違うから同じように扱うな
16. strip_tags()で削除しないタグを複数指定したい
 → strip_tags($html, '<a><p><font>'); // htmlspecialchars()も検討すべし
17. CSVやTSVのファイルをスマートに扱いたい
 → まずはfgetcsv()。ただし日本語を含むと正常に動作しない場合があるので注意だ。
18. 値渡しと参照渡し(「&」を使う)のパフォーマンスの違い
 → C言語じゃないので、パフォーマンス目的で使いわけたらダメ。参照渡しにすると逆に遅くなったりする
  参照渡しは引数に戻り値を設定したり引数を関数内で変更するなど、正しい目的に使うこと
19. ファイル入出力関数(fopen等)でリモートファイル(http://〜とか)を扱う際の限界
 → fsockopen()でソケット通信 or PEARのHTTP系 or CURLで解決
  必要ならHTTPをはじめとする各種プロトコル(どんなデータを送受信するか)はRFCなどで調べる
20. PHPからPOSTリクエストしたい
 →19.を参照
21. 画像処理一般 or GDの限界
 → ImageMagick(PECLのやつ or シェルから実行)
22. 画像・音・動画はファイルで保存?DBに保存?
 → 好きにしてください

5 :nobodyさん:2015/01/06(火) 15:55:17.71 ID:???.net
朝起きると僕のおちんちんが大きくなっています
病気でしょうか?

6 :nobodyさん:2015/01/06(火) 22:53:23.46 ID:???.net
>>1


7 :nobodyさん:2015/01/07(水) 11:46:08.59 ID:???.net
なんかプログラム板の方だけが進んでる気がするんですが。

8 :nobodyさん:2015/01/07(水) 11:52:18.20 ID:???.net
このスレは、毎回荒らしの為に真っ当に機能しませんので、
今後は、他質問サイト等をご活用ください。

9 :nobodyさん:2015/01/07(水) 13:39:48.78 ID:???.net
IDあると荒らしにくいのか、ム板の方のスレに気づいてないのか、もう荒らすの飽きたのか

10 :nobodyさん:2015/01/07(水) 16:24:07.12 ID:???.net
あんまり刺激すると出てくるからシーッ!

11 :nobodyさん:2015/01/07(水) 18:04:41.04 ID:HTxb5ePJ.net
phpで読み込んだファイルの文字列をアトランダムにビット操作するとなぜか全体の1%ぐらいファイルサイズが変わってしまうんですが、どうしたらいいですか?
ttp://codepad.org/yVnMfKj7
出力したファイルをそのままもう一度処理にかけるとバイト数が元に戻り、文字化け等が無いんですが、
C++のifstreamでは下がったバイト数分しか読み込まれず、パース出来ません
日本語のせいかとも思いましたが、「あ」*1000文字のファイルでも「a」*1000文字のファイルでもファイルサイズが下がりました

12 :nobodyさん:2015/01/07(水) 18:12:18.33 ID:???.net
>>11
ファイルサイズが変わるのが問題なら、変わらないアルゴリズムにすればいいよ

13 :nobodyさん:2015/01/07(水) 18:20:39.09 ID:???.net
>>11
> //ASCIIコードの適当な文字と排他演算させる
の意味が良くわからんけど、手元で実行したらファイルサイズは変わらなかった。

aaa.dat -> bbb.dat -> ccc.datと変換。
-rw-rw-r-- 1 1000 1月 7 20:18 2015 aaa.dat
-rw-rw-r-- 1 1000 1月 7 20:19 2015 bbb.dat
-rw-rw-r-- 1 1000 1月 7 20:19 2015 ccc.dat

14 :nobodyさん:2015/01/08(木) 11:21:10.84 ID:pml5LpVD.net
aaa.datの文字コードってなんですか?
UTF-8でやってるんですが、文字のバイト数を定めるコードまで書き換わってるんでしょうか

15 :nobodyさん:2015/01/08(木) 11:44:03.53 ID:pml5LpVD.net
すいません、なんかファイルを上げたFTPソフト上で既にバイト数が減っていました
ファイルの転送方法を自動->バイナリにしたら普通にできました
ありがとうございました

16 :(*'ω'*):2015/01/10(土) 04:33:47.99 ID:/vs82Lx1S
済みません教えて下さい

こちの簡易アップローダーを設置しました
ttp://php.eweb-design.com/1502_up.html

それで、出力されたファイル名を【***.jpg】ではなくて【http://***.***.jpg】まで表示させるには何処を変更追加したらいいでしょうか?

どなたか教えて頂けると助かります(;;)

17 :nobodyさん:2015/01/11(日) 02:13:41.14 ID:228RDm1S.net
PHPTALで質問。
setOutputModeをHTML5の設定にしたけど、パースの際に
metaなど閉じタグ不要の要素に、スラッシュがないと怒られる。
こういう仕様なの?
それとも正しくHTML5に設定できてなくてXHTMLの形式でパースされてるのかな?

構成
FuelPHP1.7.2
PHPTAL1.3.0

18 :16:2015/01/11(日) 02:52:39.38 ID:228RDm1S.net
自己解決しました。
setOutputModeの意味を理解してませんでした・・・。

19 :nobodyさん:2015/01/12(月) 01:00:37.32 ID:fqM0hwsA.net
今パーフェクトPHPって本でフレームワークの勉強してるんだけど
どうしても納得出来ない箇所あるから誰かわかりやすく教えて
http://phpbook.e1blue.net/perfect/index7_Router.html
サイトに大体のコード書いてあるけど、わからないのは一箇所だけ。

Routerクラスのif (preg_match('#^' . $pattern . '$#', $path_info, $matches)) って所なんだけど
格納されてる文字列が$path_infoより$patternのほうが長いって、マッチングできなくないの?

20 :nobodyさん:2015/01/12(月) 10:56:18.38 ID:???.net
$path_infoより$patternのほうが長ければ、マッチングできないはず。
つまり、$patternの方が短くなければならない。

$patternは、$this->routesの中身によるから、$this->routesの中身がどうな
っているか検証したほうがいい。
もっとも、そこのコードは複雑でわかりづらいけど。
あるいは、どうしても知りたいなら、実際に動かすといい。

foreach ($this->routes as $pattern => $params) {
if (preg_match('#^' . $pattern . '$#', $path_info, $matches)) {
$params = array_merge($params, $matches);

return $params;
}
}

21 :nobodyさん:2015/01/12(月) 11:16:11.64 ID:fqM0hwsA.net
>>20
やっぱりそうだったのか。

じゃあ例えば
RequestされたURLが
http:/example/foo/bar/status/list
ルーティング定義配列(compileRouteメソッド変換済み)が
/status/list
とかだった場合、

$path_info = '/list';
$pattern = '/status/list';

になるはず。
だから$path_infoより$patternのほうが短くないとけないはずなのに
if (preg_match('#^' . $pattern . '$#', $path_info, $matches))
はtrueにはどうしてもならないと思うんだけど。

22 :nobodyさん:2015/01/12(月) 11:33:29.78 ID:fqM0hwsA.net
動かしたい気持ちは山々なんだけど、ルーティング定義処理のregisterRoutes抽象メソッドは
個々のアプリによって定義するルートが違うとかで、アプリを作る段階にならないと詳細にはわからない。

『それでもとりあえず$pattenのほうが$path_infoよりも長くなるなんて、まずpreg_match関数が機能しないと思う』
とさっきまで考えていたんだが、書いてる途中で少しなにかに気がついた。

ルーティング定義連想配列のキー値は「PATH_INFO」で
そのキー値だけを正規表現に変換するのがcompileRoutesメソッド。
そして変換済みのルーティング定義配列(現ルーティングパラメータ)を
$path_infoとマッチングを行うのがresolveメソッド。
その中でif (preg_match('#^' . $pattern . '$#', $path_info, $matches))
というルーティングパラメータのキー値($pattern)と$path_infoをforeachでまわす処理が出てくるが、
マッチすれば値をマージして返す。

結局resolveメソッドで何がしたいかというと、ルーティングパラメータのキー値をキャプチャした$matchesでマージして
それを返したいだけ。

ってところまで理解できた。
フレームワークのRtouterクラスの理解はこの程度にしておいて、実際にアプリ作る段階で
ルーティング定義配列作ると思うから、そこで実際の値の動きを追って理解しようとお思う。

23 :nobodyさん:2015/01/12(月) 12:42:08.78 ID:???.net
そこが一番難しいところだから先に進むといい。
あとは比較的簡単だよ。
一通り終えてそこに戻れば完全に理解できるかも。

Routerクラスは複雑過ぎて、俺にはイマイチわからなかったけど。

24 :nobodyさん:2015/01/12(月) 16:14:53.77 ID:fqM0hwsA.net
パーフェクトPHPって本の解説が洗練されすぎてて、自分も理解出来てる自信ない。
>>23の言う通り最後の方まで処理追っかけて読んでみるよ。
さんくす。

25 :nobodyさん:2015/01/13(火) 14:41:37.14 ID:???.net
>>23は、そこは後回しにして先に進んで
あとで見なおせって言ってように見えるが・・・

26 :nobodyさん:2015/01/16(金) 18:50:33.50 ID:2SMs2buE.net
【PHPのバージョン】5.4
文字として格納されている$a[0]="6B"を
ビット否定で反転して再び文字列として$a[0]に"94"という形で入れたいのですがどうすればいいですか?
$a = ~intval($a, 16);
$a = dechex($a);
$a = substr($a, 6, 2);
適当にやってたらこれで出来ましたが全然スマートじゃないのでご教授お願いします。

27 :nobodyさん:2015/01/16(金) 19:51:28.76 ID:???.net
foreach(str_split($a)as $c) $v.=dechex(15-hexdec($c));

28 :nobodyさん:2015/01/16(金) 20:40:30.65 ID:???.net
>>27
ゴミコード貼るなクズ

29 :nobodyさん:2015/01/16(金) 21:52:34.49 ID:???.net
>>26
94って答えがそもそも間違ってる

30 :nobodyさん:2015/01/16(金) 22:43:51.09 ID:???.net
>>26
6Bを2進数にすると1101011
これをbit否定で反転すると0010100
10100は16進数で14
>>26はbit否定で反転した1111....1110010100となった時の下位8桁以上を含んでいる
これをbit否定で反転するには6Bの桁数を取得して、左シフトとビット和を使って1で埋めた値をXOR演算で反転すれば良い

カラーコードの16進数として色を反転させたかったら
dechex(hexdec('FF') - hexdec('6B'));
とすればいい。でもこれはbit否定の反転なんて言わん

31 :nobodyさん:2015/01/16(金) 22:46:07.52 ID:2SMs2buE.net
>>29
windowsの電卓で6BにNOTするとFFFFFFFFFFFFFF94だったので
FFでANDすると94と思った数字になったんですが
これをPHPですると$a = dechex(~hexdec($a)); $a &= 0xFF;
としても0にしかなりません・・・

32 :nobodyさん:2015/01/16(金) 22:49:47.64 ID:???.net
>>31
電卓のその結果は正しい
普通はそれでフラグを管理したりする
FFFFFFFFFFFFFF94という値を使わずにsubstr()して何故か94だけ取得してるのがおかしい

33 :nobodyさん:2015/01/17(土) 00:37:20.72 ID:???.net
>>30>>32
よくわかりましたありがとうございます。

34 :nobodyさん:2015/01/17(土) 02:30:14.09 ID:???.net
バイト単位で反転したいのかと思ったら違ったのかよ

>>31
dechexは int->17進数表記文字列だ ソレに 0xFF の論理和とってどーすんだよ。

35 :nobodyさん:2015/01/17(土) 02:31:07.45 ID:???.net
論理和じゃねーわボケ

36 :nobodyさん:2015/01/17(土) 10:35:28.17 ID:???.net
http://php.net/manual/ja/language.operators.bitwise.php

37 :nobodyさん:2015/01/18(日) 01:07:07.39 ID:t9lQSBuq.net
全く関係ない質問ですが、他が過疎っているので、プログラミングの識者の皆様にお尋ねさせてください。

地域選択ですが優れたUIのサイトを御存じの方いらっしゃいませんか?
日本-東京-上野
というように複数階層で選択してもらうのですが、いまいちしっくりくるUiが浮かびません。
3階層か4階層なのにいい感じにまとまっているサイトを御教授ください。

すみませんが、宜しくお願い致します。これでもう2週間くらい考えていますが、私の腐った頭ではアイディアが浮かびません。

38 :nobodyさん:2015/01/18(日) 08:29:39.97 ID:???.net
htmlスレで聞いてきてください

39 :nobodyさん:2015/01/19(月) 05:00:17.62 ID:???.net
>>37
ばーかばーか

40 :nobodyさん:2015/01/19(月) 19:58:08.23 ID:???.net
>>37
この掲示板の住人は>>38>>39のように無能だけだよ
センスが問われる質問をこの無能達にしても仕方がない
いくらかかっても良いから自力で考えた方が遥かに良いだろう

41 :nobodyさん:2015/01/19(月) 20:05:02.47 ID:???.net
自虐(・A・)イクナイ!!

42 :nobodyさん:2015/01/20(火) 22:36:40.06 ID:???.net
誰立てたの?
こっちでは回答しないよ。

43 :nobodyさん:2015/01/21(水) 00:45:04.08 ID:???.net
俺は回答するからいいよあなたはしなくても

44 :nobodyさん:2015/01/21(水) 19:22:41.15 ID:???.net
たしかに無能スレだからいらね
死ねよ

45 :nobodyさん:2015/01/23(金) 21:14:09.03 ID:hqqvifMF.net
マルチスレッド環境におけるプログラム開発においてのdispatherの役割は理解出来るのですが
PHPのようなWebシステムにおいてdispatherっていうのはどういう役割を担うものなのでしょうか?
フレームワークとかでよく見るのですがいまいちよくわかりません

46 :nobodyさん:2015/01/24(土) 00:33:02.50 ID:???.net
>>45
マルチスレッドのほうはスレッドの振り分けで、PHPのフレームワークではリクエストによって処理を振り分け。
意味が違う。

47 :nobodyさん:2015/01/24(土) 00:49:53.53 ID:???.net
だから、PHPは遅いというわけで

48 :44:2015/01/24(土) 06:43:22.49 ID:/NxVsKku.net
>>46
意味が違うものだったのですね
すっきりしました
ありがとうございます

49 :nobodyさん:2015/01/25(日) 16:15:26.61 ID:smE8X9qk.net
WordPressで投稿一覧にサムネイルを表示したいのですが
他の無料ブログからインポートした記事が大量にあって、記事IDと画像の紐付けが難しいため
記事本文から一番最初の画像をpreg_match_allで抜き出そうとしたところ
一番最初ではなく、一番最後の画像が抜き出されてしまいます
preg_match_allの使い方が間違っている気がするのですが、ご助言いただけますでしょうか

$img_dir_url = home_url().'/wp/wp-content/uploads/';
$pattern = '/<img.+src=[\'"]'.preg_quote($img_dir_url,'/').'([^\'"]+)[\'"].*>/i';
$string = get_the_content();
if ( preg_match($pattern,$string) ) {
$images = preg_match_all($pattern, $string, $matches);
echo $images[1][0];
}

50 :nobodyさん:2015/01/26(月) 05:20:13.27 ID:???.net
preg_match_allの返り値は数値(マッチした総数)らしいから
$image[1][0]に文字列が入ってるのもよくわからんけど
とりあえず$matchesに結果が収まってるからechoするならこっちでしょう

51 :nobodyさん:2015/01/26(月) 05:40:05.61 ID:???.net
【PHP】下らねぇ質問はここに書き込みやがれ [転載禁止](c)2ch.net
http://peace.2ch.net/test/read.cgi/tech/1418738547/

52 :48:2015/01/26(月) 06:34:44.15 ID:???.net
>>50
すみません、質問箇所を抜き出す際に余分な記述を整理していて間違えましたが
正しくは「echo $matches[1][0];」でした

$img_dir_url = site_url().'/wp-content/uploads/';
$pattern = '/<img.+src=[\'"]'.preg_quote($img_dir_url,'/').'([^\'"]+)[\'"].*>/i';
$string = get_the_content();
if ( preg_match($pattern,$string) ) {
$images = preg_match_all($pattern, $string, $matches);
echo $matches[1][0];
}

上記をテストしてみましたが、$matchesに含まれる要素は下記の二つのみでした
一番最初に挿入された画像を取得したいのですが、何故一番最後になってしまうのか……うーん
$matches[0][0] →記事本文全文
$matches[1][0] →記事本文中で一番最後に挿入された画像ファイル名

>>51
プログラム板にも同様のスレがあったの気がつきませんでした
今後参考にします

53 :nobodyさん:2015/01/26(月) 06:46:41.86 ID:???.net
正規表現部分はスルーしたけど
状況から見て最短マッチじゃなくて最長マッチになっているんだろうな

54 :48:2015/01/26(月) 08:40:49.20 ID:???.net
>>53
なるほど、$stringの記事本文を変えてテストしてみたらそれっぽいですね
$matches[0][0]に入っているのは記事全文は勘違いで「<img src="〜」から記事の文末まででした
もう一度正規表現から勉強し直して見直してみます
貴重なヒントありがとうございます

55 :nobodyさん:2015/01/26(月) 08:49:01.58 ID:???.net
まあ勉強しなくてもimgとsrcの間の+を+?に変えるだけだったりしてw

56 :nobodyさん:2015/01/26(月) 14:01:02.90 ID:???.net
.*が残ってる

57 :nobodyさん:2015/01/26(月) 18:22:05.82 ID:???.net
  ∧∧
 (д`* )
 (⊃⌒*⌒⊂)
  /_ノωヽ_)

58 :48:2015/01/26(月) 22:47:47.48 ID:???.net
>>55
ありがとう〜!
最初の+を+?にしたら無事に1番目の画像が取得できるようになりました、感謝

.*のところも見直した方がいいのかな?と思って外してみたけど
画像が取得できなくなって???なので元のままにしておきました
正規表現まだまだ手探り状態なんで勉強しないとな

59 :nobodyさん:2015/01/27(火) 08:52:30.07 ID:???.net
記事中の最初の画像拾うだけに正規表現っていらなさそうだけどな
投稿記事がどこから始まるかっていうのは法則があるだろうし
ソース抜き出す正規表現絡みの質問多いけどもっとみんなDOMやればいいのに

60 :nobodyさん:2015/01/27(火) 15:24:26.49 ID:???.net
小銭稼ぐサイトを作るためにそこまではやりたくないんじゃないの

61 :nobodyさん:2015/01/27(火) 23:10:57.91 ID:???.net
作成した3つの画面を
A→B→Cと遷移したとき
Cにいる状態でブラウザの戻るボタンを押したら
BをとばしていきなりAに遷移するような
仕組みにしたいんですが
どうしたらいいですか?

62 :nobodyさん:2015/01/27(火) 23:55:11.26 ID:???.net
>>61
Bでなんらかの値を確認して妥当ならC、無効ならAにリダイレクト

あとこっちを使いなさい

【PHP】下らねぇ質問はここに書き込みやがれ [転載禁止](c)2ch.net
http://peace.2ch.net/test/read.cgi/tech/1418738547/

63 :nobodyさん:2015/01/28(水) 05:53:08.93 ID:???.net
>>61
ID出せ

64 :nobodyさん:2015/01/28(水) 05:55:48.21 ID:???.net
>>62
それ避難スレだろ
本スレはこっちだ
あまりム板の人に迷惑かけるなよ

65 :nobodyさん:2015/01/28(水) 06:24:58.32 ID:???.net
>>64
久しぶりだな。本スレ向こうだよ

66 :nobodyさん:2015/01/28(水) 07:08:09.40 ID:???.net
同調されないと荒らし扱いとかw
ローカルルールも読めないのか?
荒らしがいないときは基本こっちを使うべき>>2にも書いてんだろ

67 :nobodyさん:2015/01/28(水) 08:07:42.52 ID:???.net
すぐ荒れるこんなスレ必要ないわ

68 :nobodyさん:2015/01/28(水) 08:11:41.16 ID:???.net
そう思うならむこうに篭ってればいいじゃない。

69 :nobodyさん:2015/01/28(水) 08:25:32.44 ID:???.net
いちいちこうやって反応する馬鹿がいるから向こうにで質問するように

70 :nobodyさん:2015/01/28(水) 08:34:13.27 ID:???.net
よほど都合が悪いようだな
質問に回答もせず荒らすことだけしか考えてない輩がいるからこのスレは終了な



以後、このスレで質問しても荒らしの自演と見做されるので
質問者は

【PHP】下らねぇ質問はここに書き込みやがれ [転載禁止](c)2ch.net
http://peace.2ch.net/test/read.cgi/tech/1418738547/

で質問しましょう
あと、このスレでの質問=荒らしなので回答はやめましょう

71 :nobodyさん:2015/01/28(水) 08:42:18.14 ID:???.net
こうやって荒らしてる連中がむこうで何食わぬ顔して回答してるのか

72 :nobodyさん:2015/01/28(水) 09:00:33.46 ID:???.net
SAPIとか知ってなさそうな感じだなw

73 :nobodyさん:2015/01/28(水) 13:53:35.88 ID:???.net
>>72
脈絡がなさすぎ。最近覚えた言葉の発表会じゃないですよ

74 :nobodyさん:2015/01/28(水) 22:43:51.48 ID:oxIdnnOu.net
フォームなどのsubmitを連打したときの二重POSTを防ぐ方法ってないでしょうか?

一応、こちらでも事前に調べてみましたがJavaScriptでボタンを非表示にする方法が
あったのですがブラウザ側でJavaScriptを無効にしてた場合に連打されたらまずいなと思い
php側で何か対処法が知りたくてこちらで質問させていただきました。

75 :nobodyさん:2015/01/28(水) 23:45:59.96 ID:???.net
>>74
JavaScriptが使えなければそもそもsubmitできないようにすればいいよ

76 :nobodyさん:2015/01/28(水) 23:52:03.61 ID:???.net
まーた荒らしの自作自演か

77 :nobodyさん:2015/01/29(木) 02:07:05.50 ID:???.net
>>74
>>75のようにJavascriptを使用できるブラウザじゃないと操作できないようにするとか、
ユニークなID埋め込んで同IDでPOSTされたものは受け付けないとか、
セッションで管理するとか。

78 :nobodyさん:2015/01/29(木) 02:31:36.81 ID:0JNlRH9V.net
>>75
>>77
ありがとうございます。
ユニークIDを埋め込んでみたら二重POSTを防ぐことができました。

79 :nobodyさん:2015/01/29(木) 07:28:28.46 ID:???.net
DBのテーブルのようなところに格納されておらず比較もできない状態で
そういう意味で重複時のリジェネレートが必要でない
1発で完全なユニークIDを作成する方法ってあるんだろうか

80 :nobodyさん:2015/01/29(木) 09:39:52.62 ID:???.net
IDも出さずに質問
また荒らしか

81 :nobodyさん:2015/01/29(木) 12:23:12.40 ID:???.net
>>79
IDの空ファイル作れ。
is_fileとか使えばIDが生成されているかどうか分かる。

82 :nobodyさん:2015/01/29(木) 15:41:21.64 ID:???.net
>>79
あるよ

>>81
どっからどう見ても再生成が必要な例を挙げてしまうほど読解力のない回答者さんこんにちは。

83 :nobodyさん:2015/01/29(木) 17:58:28.59 ID:???.net
ない
最大長が存在する限り天文学的な確率になっても被る可能性はある
かといって無限な実装は無理

84 :nobodyさん:2015/01/30(金) 00:43:13.82 ID:???.net
現実的に最大長に達するかどうかの検討をせずに突き進むタイプかー。
そうだねないね

85 :nobodyさん:2015/01/30(金) 07:32:23.26 ID:???.net
素直に連番を振るのであったw

86 :nobodyさん:2015/01/30(金) 07:52:02.85 ID:???.net
現実的どうこう言う前にあるよと断言してる凄さには突っ込まないのか

87 :nobodyさん:2015/01/30(金) 12:26:53.08 ID:???.net
>>86
断言してるわりに具体例出さないから誰も突っ込まないだけ

88 :nobodyさん:2015/01/30(金) 13:27:57.23 ID:???.net
1台のマシン前提でいいなら普通にできるから特に

89 :nobodyさん:2015/01/30(金) 15:42:37.56 ID:???.net
記憶だめ 比較だめ 再生成だめ

90 :nobodyさん:2015/02/02(月) 18:43:56.09 ID:???.net
質問すんません。
AサーバにBサーバのphpスクリプトをiFrame内に読み込んだ場合
スクリプトを実行するのはAサーバですか? それともBサーバですか?

91 :nobodyさん:2015/02/02(月) 18:55:51.25 ID:???.net
普通に考えればわかること

92 :nobodyさん:2015/02/02(月) 18:58:04.57 ID:???.net
・・・ですよね。でもわからないから聞いてます

93 :nobodyさん:2015/02/02(月) 18:59:14.68 ID:???.net
外部サーバじゃなくて、普通にincludeならそのサーバになりますが
iFrameでsrc="script.php"とした場合、どうなるのかと

94 :nobodyさん:2015/02/02(月) 19:09:44.23 ID:???.net
そのスクリプトはFormを作成してPOSTするものなんですが
action属性を空白にしているのに、そのまま機能してるみたいなんですよね。
POSTするとき、Bサーバに問合せてることになりますよね。

さっき、何もせずに外部サーバのiFrameに読み込ませたら機能してビックリしたんです。
これが可能なら、yahooのTopページを読み込んで、偽Yahooとか出来る事になりますよね。

95 :nobodyさん:2015/02/02(月) 19:26:31.68 ID:???.net
それyahooそのものじゃね?

96 :nobodyさん:2015/02/02(月) 19:53:10.12 ID:???.net
中身はそのものですよね。URLは違うけど。
それにしてもDBにまで登録できてしまうとは驚きです

97 :nobodyさん:2015/02/02(月) 19:58:41.11 ID:???.net
クロスドメインになるのでそれに対してスクリプトでどうこうは出来ないよ

98 :nobodyさん:2015/02/02(月) 20:19:23.67 ID:???.net
>それにしてもDBにまで登録できてしまうとは驚きです

単にそのページのPOST機能でPOSTデータを登録してるに過ぎないんじゃないの。
つーか他所から別の箇所にPOSTできるのは普通だよ。
だからCSRFとか問題になるんだし。

99 :nobodyさん:2015/02/03(火) 01:56:10.50 ID:???.net
うーむ・・・。自分のサイトの問い合わせフォームが勝手に外部ファイルとして読み込まれて、
スパム投稿につながる可能性ありますよね。。。。気が付かなかったなぁ

100 :nobodyさん:2015/02/03(火) 03:14:32.99 ID:???.net
年代的に知らないのかもしれないから書いとく。
はまちちゃんでぐぐったら?

225 KB
新着レスの表示

掲示板に戻る 全部 前100 次100 最新50
名前: E-mail (省略可) :

read.cgi ver 2014.07.20.01.SC 2014/07/20 D ★