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

ajaxのmysql/phpをダブルリクエストします

    1. コードはSQLインジェクションに対して脆弱です。 あなたは本当に プリペアドステートメント を使用する必要があります 、SQLで評価されないパラメータとして変数を渡します。私が何について話しているのか、またはそれを修正する方法がわからない場合は、ボビーテーブル

    2. 古いMySQL拡張機能を使用した新しいコードの記述を停止してください。このコードは維持されなくなり、コミュニティは非推奨プロセス 。代わりに、改善されたMySQLi のいずれかを使用する必要があります。 拡張機能または PDO 抽象化レイヤー。

    3. SQL結合> 。

    4. あなたは本当に スキーマを次のいずれかに変更するように努める必要があります:

      • ホテルテーブルの宛先外部キー(ホテルが複数の宛先に関連付けられている場合)。または

        ALTER TABLE sirev_Hotels
         ADD COLUMN hoDestination INT,
         ADD FOREIGN KEY hoDestination REFERENCES sirev_Dests (deDestCode)
        
      • 目的地とホテルの関係の表(ホテルを複数の目的地に関連付けることができる場合)。

        CREATE TABLE sirev_DestinationHotels (
          dehoDestination INT,
          dehoHotel INT,
          FOREIGN KEY dehoDestination REFERENCES sirev_Dests  (deDestCode),
          FOREIGN KEY dehoHotel       REFERENCES sirev_Hotels (hoCode)
        )
        
    5. それが不可能な場合は、MySQLの<を使用できます。 code> FIND_IN_SET() 結合基準として機能する:

      SELECT hoCode, hoName
      FROM   sirev_Hotels
        JOIN sirev_Dests ON FIND_IN_SET(sirev_Hotels.hoCode, sirev_Dests.deHotels)
      WHERE  sirev_Dests.deDestName = ?
      
    6. テーブルを結合してhoCodeを取得した およびhoName 目的の目的地にあるすべてのホテルの中で、結果セットをループして を出力できます。 、 htmlentities()を適用します 必要に応じて。



    1. JDBC:同じトランザクションで作成されたPKの外部キー

    2. Laravelの大文字と小文字を区別するwhereステートメント

    3. 複数でありながら相互に排他的な外部キー-これは進むべき道ですか?

    4. 列に最大値を設定する