regestergolobals ON のとき、クラスの変数へ送信 - PHPプロ!Q&A掲示板

154

  • 200P

regestergolobals ON のとき、クラスの変数へ送信

質問日時 / 2006年8月30日 21:32    回答数 / 2件

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

キーワード /

こんばんは。

初歩的な質問で申し訳ありませんが、もしよろしければご返答お願いします。

register_globals が ON の時、GET や POST によって、そのスクリプトの変数へデータを送れると思うのですが、クラス内で宣言/オブジェクト化している変数を指定して、直接送ることは可能なのでしょうか?

実は、可能な方法を探しているわけではありません。
できない、ということがわかれば、ちょっと安心かな?などと思いまして…。

妙な質問で申し訳ありません。よろしくお願いします。

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



ツリー一覧

┗A01kusyukusyuできるかできないかで言えば、おそらくできないのでは
 ┗A01-1kawamuraご回答ありがとうございます。 クラスを書くことで

回答一覧

並び替え:

A01 満足
answererkusyukusyu [8月30日 22:28]

できるかできないかで言えば、おそらくできないのではないかと思います。実際検証したわけではありませんが。。。 しかし問題は安全性ということですよね?

オブジェクトのプロパティ等にはアクセスできませんが、そもそもそのオブジェクト自体がregister_globals = onの機能(グローバル変数の登録機能)により上書きされる可能性があるので、スクリプトの構造によっては安心できないかもしれません(^_^;

(この機能はプログラミングを楽にするための機能だったのだと思いますが、結果的に変数を初期化してからでないと安全に使えないという点では、offにした方が楽かもしれませんね。。。)


>こんばんは。
>
>初歩的な質問で申し訳ありませんが、もしよろしければご返答お願いします。
>
>register_globals が ON の時、GET や POST によって、そのスクリプトの変数へデータを送れると思うのですが、クラス内で宣言/オブジェクト化している変数を指定して、直接送ることは可能なのでしょうか?
>
>実は、可能な方法を探しているわけではありません。
>できない、ということがわかれば、ちょっと安心かな?などと思いまして…。
>
>妙な質問で申し訳ありません。よろしくお願いします。

この意見に回答する

ツリーへ TOPへ

A01-1
replyerkawamura [8月31日 22:13]

ご回答ありがとうございます。

クラスを書くことで、セキュリティ面のリスク回避とまではいわないが軽減ぐらいにはなる、ということをチョット小耳にはさんだのですが、あまり書籍などに書かれていないような感じなので、今回質問してみました。

そういう目的で、という認識は、たしかにまずいかもしれませんね。

そういう心配だったら依存するよりも、とにかく初期化するように努力するのが一番だ、ということでアドバイスをいただけたかと思います。

ありがとうございました。

この意見に回答する

ツリーへ TOPへ

<<質問一覧へ



Pick Up Q&A

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

>>続きを読む

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

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