sql >> データベース >  >> RDS >> Mysql

mysqli_real_escape_stringを使用して、クエリ文字列を保護するのに十分ですか?

    どこでも正しく使用されている場合、real_escape_stringはオプションです。ただし、次のコードを検討してください。

    $page = $_GET['page'];
    $sql = 'SELECT `name` FROM `user` WHERE `id` = ' . mysqli_real_escape_string($page);
    

    安全かどうか? real_escape_文字列 引用符内の文字列をエスケープするためにのみ使用できます。 $page 1 OR id IN (2,3,4,5,6,7,8,9)の場合があります →引用符なし、実際のエスケープなし。この場合、正しいデータ型(int)にキャストすると役立つ場合があります。プリペアドステートメントを使用することをお勧めします。誤用するのは簡単ではありません。




    1. カテゴリの管理やスレッドや投稿への投票など、より高度な機能の追加

    2. PL / SQLパッケージのグローバル変数の値を動的に変更するにはどうすればよいですか?

    3. データベースの詳細を取得する方法は、opencartのビューです

    4. Oracleデータベースが自動インクリメントをサポートしているかどうかを検出するにはどうすればよいですか?