トップページphp
1002コメント362KB

PHP質問・雑談スレ【初心者お断り(ROM歓迎)】©5ch.net

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん 転載ダメ©2ch.net2016/04/22(金) 08:58:11.47ID:???
PHP関する質問や雑談をするスレです。
初心者お断り(ROM歓迎)と書いてますが、初心者用のスレが用意されているからで、
難しい質問や話題をしなければいけないわけではありません。
PHPマニュアルの読み方を概ね理解していて、関数リファレンスが正しく読める方用のスレです。

PHP未導入の方や、手取り足取りが必要な初心者の方はくだスレへどうぞ。
【PHP】下らねぇ質問はここに書き込みやがれ 4
http://echo.2ch.net/test/read.cgi/tech/1457792733/

その他リンク
・PHPマニュアル
 https://secure.php.net/manual/ja/index.php
・コードテスト・貼り付け用
 http://ideone.com/
・プログラミングのお題スレ Part8 (求PHPer参戦)
 http://echo.2ch.net/test/read.cgi/tech/1444216746/

このスレで扱う話題
・PHPのコード,設定や設定値に関する質問
・常識的範囲内でのコードレビュー依頼・改良相談
・PECL,PEARに関する質問
・PHP新機能やPHP関連トレンドの話題
 (FWや非公式ライブラリの話題や特徴比較は良いが使い方から先の話題は専スレへ)
・PHPのバグ発見報告・公式に報告する前の検証依頼

このスレで扱わない話題
・直接関係ない○○特有の質問(専スレへ)
 (HH,エディタ,IDE,サーバ,OS,DB,SQL,FW,テンプレート,非公式ライブラリ・アプリケーション等)
・PHPの改造
0780nobodyさん2016/10/08(土) 23:17:32.21ID:???
ま、自分用で不都合ないならごちゃまぜ対策を入力時に全部やって、出力時にもやる二重のご苦労コードでもいいんじゃまいか?
俺は困らないし。
0781nobodyさん2016/10/08(土) 23:18:27.93ID:???
>>774
PDOでIN句は使えないよ
やったことあればわかるしちょっと調べればわかること
0782nobodyさん2016/10/08(土) 23:20:18.37ID:???
>>780
その通り
結局脆弱性対策がきっちりできていてユーザーが使えればどちらをやっても良いということだ
0783nobodyさん2016/10/08(土) 23:23:42.03ID:???
>>774
複雑って程でもないけどそれなりに面倒だよ
IN句をそのまま使えた方が良い
それ以前にIN句をそのまま使えないPDOがクソと言えばクソだが
0784nobodyさん2016/10/08(土) 23:23:42.62ID:???
>>775

ちょっとだけ補足

>「入力でサニタイズ」することが大間違いなのだが

ここだけ、間違いね。

フォームで期待されている値以外を排除するための「入力でのサニタイズ」
つまり、本当の意味でのサニタイズは絶対に必要だよ。

その後に書くプログラムの量と複雑さに関わってくるからね。

まず、仕様で定められている値にサニタイズする。これが鉄則。
これが出来ていないプログラムが実に多すぎるのが残業だらけのクソ業界に繋がっている。

このサニタイズの際には不必要な改行コードやNullバイトも必ず削除しておくこと。
これも、ちゃんとやっているシステムを見たことが無い。

そのせいでphpmyadminの古いバージョンではNullバイト攻撃による任意のPHPコード実行が可能な脆弱性があって、
アホみたいな話だけど、PHPの方でこの脆弱性を修正した。
0785nobodyさん2016/10/08(土) 23:24:50.82ID:???
>>781
現実にやってるか言ってるんだけど、
君がやり方を分からないって可能性を、なぜ排除した?
この短い時間で。
0786nobodyさん2016/10/08(土) 23:26:10.85ID:???
>>781 : nobodyさん2016/10/08(土) 23:18:27.93 ID:???
>やったことあればわかるしちょっと調べればわかること

よし、じゃあ、その調べたソースを見せてみてくれ。
添削してあげるから。

何度も言うけど、君は技術力も知能も低すぎるんだ。
自覚しないと前に進めないよ。
0787nobodyさん2016/10/08(土) 23:27:46.57ID:???
>>783
クソなのは、君の脳

ちょっと、「どうして複雑だと思うか」を分かるように、コード書いて見せてごらん。
教えてあげるから。
0788nobodyさん2016/10/08(土) 23:30:45.67ID:???
>>786
なんでこっちが見せなきゃいけないんだw
自分で仮想サーバーなりなんなりでPDO使ってIN句入れて実行してみれば良いだろw
そのままじゃ動かないから
IN句のやつをorでやればできるけど
0789nobodyさん2016/10/08(土) 23:35:01.48ID:???
>>779
では聞くがDBにエスケープしてデータ入れて困る時って具体的にどんなケースなの?
0790nobodyさん2016/10/08(土) 23:35:02.65ID:???
>>788
>なんでこっちが見せなきゃいけないんだw

上の方読んでもまだわからないの?
君がアホすぎるから、今の君のアホな脳内をみせてくれないと
どこが間違っているのか教えられないよ、ってこと。

「PDOではIN句が使えない」なんて、猿でも言わないよ。
PDOってのはただの抽象化レイヤーでしかないからね。

>自分で仮想サーバーなりなんなりでPDO使ってIN句入れて実行してみれば良いだろw

だから実際に使っているから言っているんだよってさっきも言ったよね。

君さ、毎回毎回草生やしてるけど、そんな余裕ないほど自分がアホの子なんだってそろそろ気付こうよ。
0791nobodyさん2016/10/08(土) 23:38:49.31ID:???
>>789
きみ、アホ君かな?

まず、XSS脆弱性とSQLインジェクション脆弱性の違いを理解しよう。
君が全く理解できていないことは、この文章のバカさ加減を見ればすぐにわかる。

>では聞くがDBにエスケープしてデータ入れて困る時って具体的にどんなケースなの?

答えを書いてあげようか?
DBに「なんらかのエスケープされたデータ」を入れた事「自体」で困ることはない。
だが、その取扱において困るケースは沢山有る。

君は「DBにエスケープしてデータ入れて」と書いたが、
このエスケープとは、何に対するエスケープか?

それを理解しない限り、君は相変わらずネアンデルタール人以下のままだ。
0792nobodyさん2016/10/08(土) 23:39:36.84ID:???
>>790
サルでも言わないんだw
ここでは言ってるけど
http://tips.recatnap.info/wiki/PDO%E3%81%A7where%E5%8F%A5%E3%81%AE%E3%80%8Cin%E3%80%8D%E3%82%92%E4%BD%BF%E3%81%86
0793nobodyさん2016/10/08(土) 23:44:44.66ID:???
>>791
何に対するエスケープかと言えば主にXSSと次にSQLインジェクションだよ
XSSはポストから不正なコードを埋め込まれる脆弱性でSQLインジェクションは不正なコードによりSQLを実行されることだ
自分1人なら出力時に完全にエスケープできるとしても他の奴がもしやらずに出力したらどうするんだ?
実際に脆弱性突かれてるケースがあるというのに

んでその取扱いにおいて困るケースってのは「具体的」にどんなケースなの?
3つくらいで良いから教えてよ
0794nobodyさん2016/10/08(土) 23:46:26.67ID:???
>>792
君、本当に、どこまでバカなのかな?
どうしてそれを見て「使えない」と思ったの?
ちょっと説明してみてくれる。

君、思ってた以上に頭が悪いようだな。

あと、
>ここでは言ってるけど
この人誰? なんか有名な人なの?

全然知らない人が書いた、意図も分からないペラのページ見て
「PDOではIN句が使えない」と思い込んじゃう君の脳みその構造がよくわかんないな。
0795nobodyさん2016/10/08(土) 23:49:14.53ID:???
>>794
いや実際にPDOでそのままIN句は実行できないわけだが?
可能ならPDOでIN句そのまま使いたいから使える方法教えてくれよw
0796nobodyさん2016/10/08(土) 23:50:51.44ID:???
>>793 : nobodyさん2016/10/08(土) 23:44:44.66 ID:???
>何に対するエスケープかと言えば主にXSSと次にSQLインジェクションだよ

君はさ、その二つが別の物だとわかっているのに、
一つの文章の中で「エスケープはどうする」って語るんだ。

君が頭おかしいところの一つはそこ。

>自分1人なら出力時に完全にエスケープできるとしても
>他の奴がもしやらずに出力したらどうするんだ?

>その取扱いにおいて困るケースってのは「具体的」にどんなケースなの?
>3つくらいで良いから教えてよ


・君一人なら、DBに入っているデータは「ある形式でエスケープされている」とわかるとしても
 他の奴が「その形式でエスケープされている」って事をとくていするにはどうするんだ?

・上の方のteratailの項参照

・上の方のメール送信の項参照

3つだね。これでいいかな?
0797nobodyさん2016/10/08(土) 23:53:08.85ID:???
>>795

いい加減馬鹿みたいに草生やすのやめたら?
君はそんなことシている余裕ない子だよ?

>可能ならPDOでIN句そのまま使いたいから使える方法教えてくれよw

ちょっとさ、君が想定している、その「そのまま使う」って言う状態が
どういう状態か説明しみなよ。

そうしないと、君、一生アホのままだよ?
0798nobodyさん2016/10/08(土) 23:55:13.03ID:???
>>792
あとさ、

>>748 : nobodyさん2016/10/08(土) 14:11:23.10 ID:???
> >>747
>PDOでプレースホルダも使ってるけど
>念には念を入れてだよ

これ、君だよね?

自分で何言ってるかよく考えてからレスしてね。
0799nobodyさん2016/10/08(土) 23:55:17.92ID:???
>>796
>君一人なら、DBに入っているデータは「ある形式でエスケープされている」とわかるとしても
>他の奴が「その形式でエスケープされている」って事をとくていするにはどうするんだ?
そんなの注意事項ファイルに記載しておくかINSERTしてるソース見ればわかるだろ

百歩譲って出力時だけエスケープすれば良いとしてもアホな奴がプリペアードステートメントや
プレースホルダ使用しなかったり出力時にエスケープ処理しないで問題が起きたらどうするんだ?
個人情報抜かれたりした後じゃ遅いだろ
0800nobodyさん2016/10/08(土) 23:57:05.68ID:???
>>797
そのまま使うというのはIN句をSQL平文そのまま使うという意味だ
もちろん他の部分はPDOのプリペアードやプレースホルダ使用でな
0801nobodyさん2016/10/09(日) 00:01:51.77ID:???
>>800 : nobodyさん2016/10/08(土) 23:57:05.68 ID:???
> >>797
> そのまま使うというのはIN句をSQL平文そのまま使うという意味だ
> もちろん他の部分はPDOのプリペアードやプレースホルダ使用でな

なんでそんなアホなことしたいのかは置いとくとして、
そうしたいならそうすればいいじゃん。
思いっきり脆弱性の危険性を埋め込むことになって
これまでの知ったかぶりな君の発言を全部否定することになるけど、
そうすればいいじゃないか。

どうして出来ないと思うの?

君、本当にアホの子だね。
0802nobodyさん2016/10/09(日) 00:04:52.21ID:???
>>800
つまり君は、エスケープの意味も、何故しなければいけないのかも、
プレースホルダの意味も、何故存在するのかも、
クエリをプリペアするというのがどういうことかも、
何故プリペアするのかも全く分かっていないのに
これまで十数レスに渡って、さも分かっているような顔をして草生やしてたわけだ。

救いようがない感じかな、どうやら。
0803nobodyさん2016/10/09(日) 00:12:55.86ID:???
>>799 : nobodyさん2016/10/08(土) 23:55:17.92 ID:???
> そんなの注意事項ファイルに記載しておくかINSERTしてるソース見ればわかるだろ

IN句生成が複雑だなんていってる程度の君のクソコードはみんな、読みたくなんかないって。



> 百歩譲って出力時だけエスケープすれば良いとしてもアホな奴がプリペアードステートメントや
> プレースホルダ使用しなかったり出力時にエスケープ処理しないで問題が起きたらどうするんだ?
> 個人情報抜かれたりした後じゃ遅いだろ

ほら、またごっちゃにしだした。何回言ったら理解できるのかな?
今君が話した「出力時」ってどの、何を出力を想定した? それがプリペアードステートメントと本当に関係があったかい?


> 個人情報抜かれたりした後じゃ遅いだろ
君がそんな重要なシステム開発に関われているとは到底思えないなぁ。
これまでの君の発言を読んでみればそれは誰にでも分かることだが、
君にもわかるように教えてあげるね。

「クリティカルな開発の現場においては、DBアクセスは抽象化されたライブラリを利用し、
 そのライブラリがSQLインジェクション脆弱性対策を担保している
 そうした方が、君みたいなアホが考えたオレオレアクセスを使うよりも遥かに安全だと言うことが分かりきっているからだ」

勿論、そのライブラリを使わずに君みたいな智識の無いバカが勝手なアクセスをすれば脆弱性が埋め込まれることになるが、
規定されているライブラリを使っていないことは、コードを見ればひと目でわかる。

それから繰り返し、もう一度言うけど、
XSS脆弱性対策とSQLインジェクション対策はまったく別の物だから
いい加減区別して考えられるようになれ、野猿。
0804nobodyさん2016/10/09(日) 00:19:55.67ID:???
これは重要だから、付け加えておくぞ。


>>800 名前:nobodyさん :2016/10/08(土) 23:57:05.68 ID:???
> >>797
> そのまま使うというのはIN句をSQL平文そのまま使うという意味だ
> もちろん他の部分はPDOのプリペアードやプレースホルダ使用でな

そういう状態を

>>748 : nobodyさん2016/10/08(土) 14:11:23.10 ID:???
> >>747
>PDOでプレースホルダも使ってるけど
>念には念を入れてだよ

とは表現しねーんだよ、マヌケ! 使ってる意味ね〜だろーが!
いい加減に知ったかぶりで乗り切ろうとするのはやめろ。
0805nobodyさん2016/10/09(日) 00:25:18.48ID:???
>>803
XSSとSQLインジェクション対策が別物ということなどわかっている
問題は他人がselect系の作業を行う可能性があるということだ
0806nobodyさん2016/10/09(日) 00:30:13.81ID:???
少なくとも前提として, モジュール間は疎結合であるべきだということは認めてもらわないと話が進まない

データをストアする際に表示形式を考えて加工するというのはモデルがビューの領域を侵犯してることに他ならない
モデルがビューを侵犯する以上MVCが全て密結合にならざるを得ない
したがって一般にストア時に表示形式を前提とした「加工」を行う設計は「悪い」設計だと言わざるを得ない
0807nobodyさん2016/10/09(日) 00:47:53.24ID:???
INに関してはハマってる人多いようだけど
仕様理解してればどうってことないんだけどね
一昔前は情報も少なかったけど最近は多いしちょっとググれば出てくるよ

WHERE `id` IN (:hoge)
bind(":hoge", [1,2,3,4], INT) //1のみ有効
bind(":hoge", "1,2,3,4", INT) //1のみ有効
bind(":hoge", "1,2,3,4", STR) //無効

WHERE `id` IN (:hage, :hige, :huge, :hege)
bind(":hage", 1, INT)
bind(":hige", 2, INT)
bind(":huge", 3, INT)
bind(":hege", 4, INT)
0808nobodyさん2016/10/09(日) 00:51:32.31ID:???
PDOでINするときって

$parameters = array();
$parameters[] = 123;
$parameters[] = 456;
$parameters[] = 789;

$sql =
0809nobodyさん2016/10/09(日) 00:53:05.43ID:???
あれ、変になっちゃった、もう一回。

PDOでINするときって

$parameters = array();
$parameters[] = 123;
$parameters[] = 456;
$parameters[] = 789;

$sql = ”SELECT 〜〜 FROM 〜〜 WHERE column_name IN (”;
foreach ($parameters as $index => $parameter) {
  if ($index > 0) { $sql .= ’,’; }
  $sql .= ’?’;
}

$statement = $db->prepare($sql);
foreach ($parameters as $parameter) {
  $statement->bind($parameter);
}

$statement->execute();

俺はこれでやってるんだけど、もっといい方法あったら教えてくれー。
「できない」派の人は、これはPDOライブラリの機能ではなくソースで対応してることだから「できない」って意見なのかな?
0810nobodyさん2016/10/09(日) 00:54:37.98ID:???

不特定多数の値をINに入れたいときの書き方、という意図です。
たとえばフォームのチェックボックスに好きなだけチェックして送れるとかの。
0811nobodyさん2016/10/09(日) 10:00:44.52ID:???
> bind(":hoge", [1,2,3,4], INT) //1のみ有効
> bind(":hoge", "1,2,3,4", INT) //1のみ有効
> bind(":hoge", "1,2,3,4", STR) //無効
これはそれぞれの値をintやstringにキャストした時のやつってことかな?
(int)[] = 0
(int)[1000] = 1
(int)"1,2,3" = 1
(string)[1,2,3] = "Array"
"1,2,3,4"がだめなのは"1,2,3,4"というidと認識されてるからって感じで
0812nobodyさん2016/10/09(日) 11:34:44.96ID:???
Gitってここ3〜5年くらいで使われ出したの?
0813nobodyさん2016/10/09(日) 16:47:21.63ID:???
>>805 名前:nobodyさん :2016/10/09(日) 00:25:18.48 ID:???
> >>803
>XSSとSQLインジェクション対策が別物ということなどわかっている

わかってるなら何で区別して書かねーんだ、マヌケ。
お前のくだらん言い訳は聞き飽きた。

> 問題は他人がselect系の作業を行う可能性があるということだ

SELECT系だけが問題だと思ってるアホがプレースホルダを語るな、バカ。


本当にお前は、もう、3年ROMれ。
お前位みたいなバカが「PHPのPDOはIN句が使えない」とか
わかった風なフリして書き込むだけで、本当に迷惑なんだよ。

分かってないなら「わからないので教えてください」っていう体で書け。
そのぐらいの“人”としての振る舞いもわかららないからデルタールだって言ってんだ。
0814nobodyさん2016/10/09(日) 17:07:33.97ID:???
>>809
えっとね、コードが汚いから他の人がメンテしずらい。
特に、ここがダメ


$sql = ”SELECT 〜〜 FROM 〜〜 WHERE column_name IN (”;
foreach ($parameters as $index => $parameter) {
  if ($index > 0) { $sql .= ’,’; }
  $sql .= ’?’;
}


もし、この流儀に沿って治すとしたら

$in_section = "";
if(count($parameters) > 0){
 $holders = array();
 for($i=0; $i<count($parameters); $i++){
  $holders[] = "?";
 }
 $in_section = " WHERE column_name IN (" . implode(", ", $holders) . ")";
}

$sql = "SELECT 〜〜 FROM 〜〜{$in_section}";

こんな感じ。精査はしてないから雰囲気だけ分かってくれれば。
0815nobodyさん2016/10/09(日) 17:07:58.33ID:???
>>809

ただし、向こうでも言ったけど、プレースホルダに ? 使ってるやつはいい加減頭が古すぎる。
名前付きプレースホルダを使うようにしよう。

例えば

SELECT ~~ FROM ~~ WHERE hoge = ? AND hage = ? AND moge = ? muge = ? AND boke = ? AND sage = ?;
$params = array("guri", "gura", "muga", "boga", "daga", "riga");

というコードがあるとして、moge = ? の後に pubya = "papa"を挿入したい場合、
bindするパラメターのどこにpapaを挿入したら良いのか、一目でわかるかい?
実際のシステムは、バインドパラメターが10個以上になるケースも珍しくない。
そんなとき、いちいち数を数えるのは拷問でしかない。

名前付きプレースホルダを使うシステムなら順番を考慮する必要なくbind出来るから、
? なんていうノータリンが考えたソリューションは使うべきではない。
0816nobodyさん2016/10/09(日) 17:16:17.26ID:???
>>815
IN句の場合数がもの凄く多い時もあると思うがそういう時名前のbind使いたい時は
ループで数字足していって名前作るということ?
0817nobodyさん2016/10/09(日) 17:37:13.95ID:???
>>816
そういうこと。それは別にIN句に限ったことじゃない。
普通のWHERE句とかでも同様。

こんな感じ

SELECT ~~ FROM ~~ WHERE moge = :moge AND mage = :mage AND boke IN (:boke1, :boke2, :boke3);
$bind = array(
 "moge" => "もげ",
 "mage" => "まげ",
 "boke1" => "ぼけ1",
 "boke2" => "ぼけ2",
 "boke3" => "ぼけ3"
);

>>816なら作り方は説明しなくても分かるよね?

これについて、おさるサンの>>792が紹介している方法でbindする。

これなら後で別の要素を追加するにしても、順番なんか全く考慮しなくていいだろう?
こんな簡単なことなんだよ。難しくもなんともない。

なのに、こういう事を紹介している本もサイトもまったくない。
世の中、本当にバカしかいないんだなって思うよ。
0818nobodyさん2016/10/09(日) 18:18:06.51ID:???
>>817
貴方やたら人格攻撃や否定してるけどそういうの職場ではやってないよな?
相手もやる気なくなって職場の雰囲気悪くなるから指摘する点だけ話せよ
0819nobodyさん2016/10/09(日) 18:21:37.49ID:???
>>818
お前が誰だかわからんけど、
そんなどうでもいいこと指摘してる暇があったら、もっと勉強して技術磨け。
それがこの分野で金をもらうための最低条件だ。

人格攻撃? おまえ、本当にバカだろう。

おれは一度も人格攻撃なんてしていない。
おれがしてきたのは、
認識がおかしい場合と、
人としての振る舞いがおかしい場合だ。

もし、俺が人格攻撃をしていると思う箇所があるなら例示してみろ。
0820nobodyさん2016/10/09(日) 18:27:52.80ID:???
>>819
この業界2人以上で作業することがほとんどなんだからどうでも良くはない
自分のことを言ってるのではなくて貴方のことを話している。自分の間違いは認められないタイプか?
勉強するなんてのは当然のことだ
0821nobodyさん2016/10/09(日) 18:33:46.95ID:???
ひさびさにスレ伸びてんなーと思ったら
まーたさるかに合戦やってんのかー
0822nobodyさん2016/10/09(日) 18:51:58.56ID:???
いくら技術があっても共同で作業しにくい奴は士気を下げて全対の生産性も下がるからいらないんだよ
一人でやる分には問題ないけど
0823nobodyさん2016/10/09(日) 19:37:14.78ID:???
>>820
>勉強するなんてのは当然のことだ

全く勉強しないのに、さもわかったような顔して適当な智識をひけらかし、
間違いを指摘されてもヘラヘラ笑って「なんで俺が俺の考え方を提供しなきゃいけないんだよ」

と、言い放つバカと

>この業界2人以上で作業することがほとんどなんだからどうでも良くはない

一緒に仕事をしたいと思うやつは居ないし、もし一緒に仕事をすることになったら
そいつをやめさせるか、自分が職場を変える。

簡単なことだな。おまえ、アホだろう?
0824nobodyさん2016/10/09(日) 19:38:46.53ID:???
>>822
> いくら技術があっても共同で作業しにくい奴は士気を下げて全対の生産性も下がるからいらないんだよ
> 一人でやる分には問題ないけど

お前の、「共同で作業しやすい奴」というのは、お前の事を手とり足取り教えてくれる奴の事か?
そんなのは、お前の母親以外に居ないということを、そろそろ理解しような? ノータリン
0825nobodyさん2016/10/09(日) 19:41:10.15ID:???
>>822
> いくら技術があっても共同で作業しにくい奴は士気を下げて全対の生産性も下がるからいらないんだよ

まぁ、技術力が無いやつほどそう言うな。

相対的に自分の地位が下がってリストラ対象になるからな。
0826nobodyさん2016/10/09(日) 19:47:37.07ID:???
>>824
おまえが雑魚そうなのは、底辺しかいなさそうな2chで底辺ばっかに
吠えまくってることなんだよ。下ばっか見てるやつなんて大した事ねぇんだよ。
本当にできるやつは上しか見てねぇんだよ。

本当にすごいならすごいやつがいっぱいそうなところで吠えてこいよwwwwwww
0827nobodyさん2016/10/09(日) 19:49:31.94ID:???
>>820にしろ>>822にしろ

>もし、俺が人格攻撃をしていると思う箇所があるなら例示してみろ。

には何も答えないのな。同一人物か?
0828nobodyさん2016/10/09(日) 19:52:50.18ID:???
>>826
>下ばっか見てるやつなんて大した事ねぇんだよ。

おー、自分が下だって事だけは理解できたのか。髪の毛分くらい少しだけ成長したな。

>本当にすごいならすごいやつがいっぱいそうなところで吠えてこいよwwwwwww

うん、俺、全然すごくないから別に上で吠えたいと思わないな。

君は吠えたいんだ、自分が凄いって。若いっていいねぇ。
君はずっと、この底辺の場所で全く見当違いな「俺凄い!」宣言を吠えまくってきたけどな。
そんな事しても全く意味ないって自分でわかってるのにしてるんだ。

君、本当にバカだねぇ。
0829nobodyさん2016/10/09(日) 19:54:29.20ID:???
草生やした数が、そいつのバカさの度合いを表す指標ってのは、
本当によく言い当てているよね。
0830nobodyさん2016/10/09(日) 19:57:23.39ID:???
>>828
「底辺しかいなさそうな2ch」とは言ったが、自分は一言も底辺といってなのに、
妄想で「おー、自分が下だって事だけは理解できたのか」と勝手に解釈。

読解力もなさすぎで会話にすらならねぇwwww
0831nobodyさん2016/10/09(日) 19:59:17.83ID:???
おまえが今やったみたくいちいち「妄想」で話勝手に進めて俺がいちいちそれを指摘したら
話進まねぇし。めんどくせぇんだけどwww
0832nobodyさん2016/10/09(日) 20:13:08.15ID:???
>>830
おまえ、どうしてそう、自分の都合の良いところばっかりみるの?

> おまえが雑魚そうなのは、底辺しかいなさそうな2chで「底辺ばっかに」
> 吠えまくってることなんだよ。

お前がお前の言うところの「底辺」だから「お前だけ」に吠えてきたわけさ。
お前はそれを自覚したんじゃないのか?

まだ気づかないのか? おまえ、本当にあっちでもこっちでも、最底辺だぞ。

>>831

上の流れよく見てみろよ。俺が事前に何度もヒント出してるのに
それに全く気づかずにバカ返答ばっかりして話が進まなくなってたんだぞ。
気づいてなかったのか?

本当にお前はどうしようもないな。もう、霊長類のカテゴリーからも外したほうがよさそうだ。
0833nobodyさん2016/10/09(日) 20:15:01.38ID:???
>>831
前にちょっとだけ言ったけど、やっぱり正しかったようだ。
お前の頭につまってるのはカニ味噌だな。

越前ガニ君にしようか、こんどから。
0834nobodyさん2016/10/09(日) 20:16:27.41ID:???
>>俺が事前に何度もヒント出してるのに
>>それに全く気づかずにバカ返答ばっかりして話が進まなくなってたんだぞ。
知るかよボケ。それは俺がやったわけじゃねぇんだから俺に言うんじゃねぇよ。
それに、他人のせいで話が進まなくなったからっておまえも同じ事してるなら
同類だわ。
そんぐらいわかれカス。
0835nobodyさん2016/10/09(日) 20:17:39.08ID:???
>うん、俺、全然すごくないから別に上で吠えたいと思わないな。
で、下だけで吠えるんだwww
ただのカスじゃん。
0836nobodyさん2016/10/09(日) 20:18:34.13ID:???
>>831
それと、越前ガニ君さ、

なんで毎回2、3行しか文章書けないの?
どうせ、2,3行しか読むこともできてないでしょ?

なんか端末的な問題でもあるの?
それともやっぱりカニ味噌的な問題なのかな?
0837nobodyさん2016/10/09(日) 20:19:40.70ID:???
>>835
俺がカスかどうかはどうでもいいけど、
と、いうことは、吠えられてる君は「自分自身がカスである」という事が導き出せたわけだ。

実に結構。
0838nobodyさん2016/10/09(日) 20:20:51.32ID:???
>なんで毎回2、3行しか文章書けないの?
>どうせ、2,3行しか読むこともできてないでしょ?
そんな理由もわからないんだ??ww
やっぱただの馬鹿だな。

理由を教えてあげよっか??
馬鹿に長文書いても無駄。

みんな知ってるよwww
0839nobodyさん2016/10/09(日) 20:22:26.02ID:???
>>834
> >俺が事前に何度もヒント出してるのに
> >それに全く気づかずにバカ返答ばっかりして話が進まなくなってたんだぞ。
>知るかよボケ。それは俺がやったわけじゃねぇんだから俺に言うんじゃねぇよ。

カニ味噌、ちゃんとはたらいてるかなー?
ヒントを出してるのに理解せずにバカ返答したのは
君だよって話をしてるんだよ?

まぁ、理解できなかったからバカ返答してるわけで、
こういっても分かるわけないよね。

2,3行しかよめないから、過去に遡って内容を読み返すなんて、
無理だもんね、カニ味噌じゃ。
0840nobodyさん2016/10/09(日) 20:23:57.74ID:???
>>838
> 理由を教えてあげよっか??
> 馬鹿に長文書いても無駄。
> みんな知ってるよwww

そうだね。
俺が丁寧に長い文章で説明してあげてるのに
君、全く意味がわかってないもんね、いつも。

みんな、それ、わかってるよね、確かに。
0841nobodyさん2016/10/09(日) 20:24:37.95ID:???
>>839
理由を教えてあげよっか??
馬鹿に長文書いても無駄。

みんな知ってるよwww
0842nobodyさん2016/10/09(日) 20:25:55.51ID:???
もう一回、これ引用しておこうか。
カニ味噌脳の仕組みがよくわかるように。

---------------------------------------------------------------
>>800 名前:nobodyさん :2016/10/08(土) 23:57:05.68 ID:???
> >>797
> そのまま使うというのはIN句をSQL平文そのまま使うという意味だ
> もちろん他の部分はPDOのプリペアードやプレースホルダ使用でな

そういう状態を

>>748 : nobodyさん2016/10/08(土) 14:11:23.10 ID:???
> >>747
>PDOでプレースホルダも使ってるけど
>念には念を入れてだよ

とは表現しねーんだよ、マヌケ! 使ってる意味ね〜だろーが!
いい加減に知ったかぶりで乗り切ろうとするのはやめろ。
---------------------------------------------------------------
0843nobodyさん2016/10/09(日) 20:26:29.33ID:???
「馬鹿」は、誰だろうね?
0844nobodyさん2016/10/09(日) 20:28:03.22ID:???
まぁ、草生やすことでしか自己表現できない子の脳みそは
本当にどうしようもなくて、口だけだなーってよく分かる結果だよね。
0845nobodyさん2016/10/09(日) 20:28:04.85ID:???
>>843
理由を教えてあげよっか??
馬鹿に長文書いても無駄。

みんな知ってるよwww
0846nobodyさん2016/10/09(日) 20:42:42.91ID:???
URL再現できるかな?

誰もが「馬鹿」だと思う人の特徴はこんな人だ。わかりやすいね。
ttps://www.google.co.jp/search?q=%E3%82%AA%E3%82%A6%E3%83%A0%E8%BF%94%E3%81%97+%E9%A6%AC%E9%B9%BF&oq=%E3%82%AA%E3%82%A6%E3%83%A0%E8%BF%94%E3%81%97%E3%80%80%E9%A6%AC%E9%B9%BF&aqs=chrome..69i57j69i61.4295j0j1&sourceid=chrome&ie=UTF-8
0847nobodyさん2016/10/09(日) 20:47:00.06ID:???
しかしこのカニ味噌くんは、本当に毎回毎回
論理では全く太刀打ちできなくなって全く関係のない話を持ち出して延々と食い下がってくるけど、
そんなことしていて、楽しいのかな?

そういう事態になったときには既に思考力も完全に停止していて、
全くそれまでの話の内容を考慮せずにひたすらこちらを批判することに徹する。
今まで自分がしてきた馬鹿な発言なんて、全く無かったことにできる厚顔無恥さには
ほんとうにいつも驚かされるばかりだ。

厚顔というか、睾丸で物を考えているんだろう。
0848nobodyさん2016/10/09(日) 20:57:20.01ID:???
>>847
理由を教えてあげよっか??
馬鹿に長文書いても無駄。

みんな知ってるよwww
0849nobodyさん2016/10/09(日) 21:20:47.77ID:???
>>842
全く関係ない人のレスを引用して勝った気になるいつも通りの>>847
0850nobodyさん2016/10/09(日) 23:14:14.54ID:???
誰か別の人と熱くなっているようだなw
コンピューターは人格否定などしないんだから事実だけを淡々と指摘しようや
君らは余計なことばかり考えてるしPC以下なのかな?
0851nobodyさん2016/10/10(月) 01:22:34.73ID:???
ビョーキがおる
0852nobodyさん2016/10/10(月) 08:08:53.73ID:???
入力にhtmlspecialchars通すのはさすがに冗談だよな
0853nobodyさん2016/10/10(月) 09:20:25.86ID:???
>>852
これ作ったサルはやってるらしいよ
脆弱性だらけだろうな
https://agearea.com/
0854nobodyさん2016/10/10(月) 10:43:49.87ID:???
猿の人は執拗だと思うけど, 言われる側も流石にもうちょっと勉強した方がいいよとは思う
少なくとも職場にいたら研修会を開かなきゃならないと考える


IN句に対するarrayのバインドについては, それがPDOStatementクラスの仕事であるべきかを考えた方がよい
どう考えてもPDOをラップするようなクエリビルダーとかの仕事の範疇だ
0855nobodyさん2016/10/10(月) 11:14:11.30ID:???
>>854
出力時のみXSS対策エスケープした方が良いなんてちょっとPHPやってる奴ならわかってるんじゃないか?
勉強って程でもない
色んな事情で入力時にやりましたってだけで
0856nobodyさん2016/10/10(月) 11:20:13.22ID:???
>>855
そのいろんな事情が「念のため」なんだよなぁ
0857nobodyさん2016/10/10(月) 11:40:16.48ID:???
>>853
やってない
考えられる脆弱性は全て潰した
0858nobodyさん2016/10/10(月) 13:55:07.23ID:???
という幻想
0859nobodyさん2016/10/10(月) 14:09:18.16ID:???
ほい
https://www.ssllabs.com/ssltest/analyze.html?d=agearea.com

PHP側調べるのは面倒だからTLS周り
0860nobodyさん2016/10/10(月) 14:11:42.45ID:???
>>852
> 入力にhtmlspecialchars通すのはさすがに冗談だよな

冗談じゃないから、あんなに必死になって
「念のためだ」「入力時にやるなら1回だが出力は無限にある」「他人が脆弱性盛り込む場合もあるだろ」
みたいな頭おかしいことを言い続けて、最後には全く関係ない話題にすり替えてきてるんだよ。

脳みそ自体が冗談な可能性は否定できない。存在は確かにするようだ。
0861nobodyさん2016/10/10(月) 14:15:15.78ID:???
>>854
> IN句に対するarrayのバインドについては, それがPDOStatementクラスの仕事であるべきかを考えた方がよい
> どう考えてもPDOをラップするようなクエリビルダーとかの仕事の範疇だ

お前何言ってんの? そんなレベルまで話進んでないじゃん。
もっとずっと低いレベル、XSSとSQLインジェクションの区別もつかずに
わけもわからずエスケープエスケープ、っていうレベルの話だったんだよ?上って。
0862nobodyさん2016/10/10(月) 14:19:54.05ID:???
>>854
IN句の話についてはもはや、自分が話している
「プレースホルダ」「プリペアードステートメント」「エスケープ」
の意味を全くわからずに何となく使ってただけだからね、越前ガニ君は。
PHPコードの抽象化もマトモに出来ない奴が、PDOをラップとか、
想像すらできるわけないじゃないか。
そんな、彼にとっては高次元過ぎる話を、これまでの話に結び付けられても困っちゃうよ。
0863nobodyさん2016/10/10(月) 14:20:11.12ID:???
>>861
質問以外でそのレベルに合わせて話をしててもしょうがないし・・・・
0864nobodyさん2016/10/10(月) 14:37:07.33ID:???
>>863
しょうがないっていうか、
前の話題に対する内容でないなら、新たな話題提起の形にしなよ。

>>854のはどうみても、PDO使ったDBアクセスの仕方に話題があったみたいじゃないか。
そんなレベルでなかった事はわかるだろう?
0865nobodyさん2016/10/10(月) 15:22:40.40ID:???
そんな崇高なプログラマーの方々はどんなサイトやソフト作ってるの?
0866nobodyさん2016/10/10(月) 16:38:54.55ID:???
俺はPHP4でADO等のライブラリも使えなくてプレースホルダって機能がそもそも存在しない環境で仕事してまーす!
パスワードも平文でデータベースに入ってます!
面白いことに、誰でも名前知ってるくらいの、この商売の中では日本最大級の会社ですよー!!
0867nobodyさん2016/10/10(月) 16:46:37.03ID:???
>>866
そのくらい普通だろ何言ってんだこいつ
0868nobodyさん2016/10/10(月) 18:05:52.29ID:???
超絶チートな凄腕PGさんはGoogleあたりかフリーでバリバリやってるのかな?
1000万プレーヤー?
0869nobodyさん2016/10/10(月) 18:59:33.29ID:???
そんな普通を受け入れないで!
0870nobodyさん2016/10/10(月) 21:13:32.04ID:???
流石にEoLが遥か昔に過ぎてるんで保守するにしても限度はあるな
0871nobodyさん2016/10/11(火) 00:37:05.43ID:???
PHPってまだオーバーロードできないんだっけ?
get(int id) get(str name)とか出来ないみたいだから
getById() getByName()みたいにしないといけないのかな
0872nobodyさん2016/10/11(火) 04:08:35.96ID:???
>>871
出来ないしきっと出来るようにもならない
オーバーロードっぽいことをしたかったら引数の型で場合分けするしかなさそう
0873nobodyさん2016/10/11(火) 06:23:35.63ID:???
>>872
ありがとう
7で型指定みたいなこと出来るようになったみたいだから
ひょっとしたらと思ったのだけどやっぱ無理か
型と引数の数で振り分けるとどうしてもコードが汚くなるから
分離して実装することにするよ
0874nobodyさん2016/10/11(火) 09:46:15.90ID:???
そうですね
個人的にはオーバーロードそのものが汚い仕様だと思うので
あまり実装して欲しくはないかなあと
0875nobodyさん2016/10/11(火) 10:37:41.84ID:???
>>754
> >そのシステムでHTMLを使って表示しないAndroidやiOSのアプリを開発しなければいけなくなったら、
> そんなケースあるか?
余裕で普通にある
0876nobodyさん2016/10/11(火) 12:03:07.58ID:???
>>866
Adobeがパスワード平文で保存してて、IDとセットで大量流出したのは有名な話だからな。
日本に限ったことじゃないさ。

>>871-
オーバーロードが必要なのはオーバーロード文化で育った人で、
無い文化で育った人には全く必要ない。

必要機能的な理由ではなく、育った環境の違いで欲しいか欲しくないかが別れる。
つまり、どうでも良い機能。
0877nobodyさん2016/10/11(火) 12:54:38.48ID:???
メソッドを1つ覚えればいいとか(補完機能あるだろうけど)、
命名に困らないとか、そんなところか?
0878nobodyさん2016/10/11(火) 13:25:04.54ID:???
オーバーロードもジェネリクスもあれば便利だがmustではない
C++みたいに型が強ければ殆どmustだけど
0879nobodyさん2016/10/11(火) 13:28:21.61ID:???
getById() getByName()
のような処理を
get(int id) get(str name)
とするためにオーバーロードを使うのは正しいのかという
0880nobodyさん2016/10/11(火) 13:30:04.92ID:???
>>879
まぁそれは偏に間違ってますわな
■ このスレッドは過去ログ倉庫に格納されています