0

PHPスーパーグローバル$_GETを使用して、フォームタグの外部で意図したとおりに機能させることはできますか?たとえば、フォームタグの外で$ _GET('select box id')を実行して、意図したとおりに機能させることはできますか?

<?php
    ---Placeholder for DB login info---

    switch($_GET['select box id'])
    {
        case "text shown for second option of select box":
        $query = mysql_query("placeholder for actual query");
        $row = mysql_fetch_row($query);
        $textboxValue = $row[0];
        break;
    }      
?>
4

3 に答える 3

4

PHPスーパーグローバル$_GETは、フォームタグの外部で意図したとおりに使用および機能できますか?

はい。HTML内でのPHPコードの位置は、出力がドキュメントのどこに表示されるかを決定する場合を除いて、まったく関係ありません。

$_GET['select box id']

フォームコントロールは、IDではなく送信キーに名前を使用します。

mysql_query

その機能のドキュメントページにある大きな赤い警告ボックスをお読みください。

于 2012-09-06T15:32:05.103 に答える
1

これがログイン情報用である場合は、とにかくgetリクエストを使用しないでください。postを使用する必要があります。

しかし、とにかく、はい、それは機能するはずです。データがクエリとともに送信される限り、機能するはずです。

とは言うものの、入力の検証やサニタイズなど、いくつかの基本的なセキュリティの側面について調査することもできます。そうしないと、かなり厄介な攻撃にさらされる可能性があります。

O'ReillyPressのEssentialPHPSecurityという本をお勧めします。また、データベースクエリを作成するためにMySql PDOのようなものを使用することも検討します。これは、単にmysql_queryを使用するよりも信頼性と安全性が高い傾向があるためです。

于 2012-09-06T15:37:32.717 に答える
0

スーパーグローバルとは、どこでも/どこでも使用できることを意味します。

于 2012-09-06T15:32:21.580 に答える