久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

    1. <i id='X5W2D'><tr id='X5W2D'><dt id='X5W2D'><q id='X5W2D'><span id='X5W2D'><b id='X5W2D'><form id='X5W2D'><ins id='X5W2D'></ins><ul id='X5W2D'></ul><sub id='X5W2D'></sub></form><legend id='X5W2D'></legend><bdo id='X5W2D'><pre id='X5W2D'><center id='X5W2D'></center></pre></bdo></b><th id='X5W2D'></th></span></q></dt></tr></i><div class="qwawimqqmiuu" id='X5W2D'><tfoot id='X5W2D'></tfoot><dl id='X5W2D'><fieldset id='X5W2D'></fieldset></dl></div>
      1. <legend id='X5W2D'><style id='X5W2D'><dir id='X5W2D'><q id='X5W2D'></q></dir></style></legend>
      2. <tfoot id='X5W2D'></tfoot>

        <small id='X5W2D'></small><noframes id='X5W2D'>

          <bdo id='X5W2D'></bdo><ul id='X5W2D'></ul>

        如果我使用 MySQLi 準備好的語句,是否需要轉義我

        Do I need to escape my variables if I use MySQLi prepared statements?(如果我使用 MySQLi 準備好的語句,是否需要轉義我的變量?)
            <tbody id='KsK7l'></tbody>

          <tfoot id='KsK7l'></tfoot>

          <legend id='KsK7l'><style id='KsK7l'><dir id='KsK7l'><q id='KsK7l'></q></dir></style></legend>

            <bdo id='KsK7l'></bdo><ul id='KsK7l'></ul>

                <small id='KsK7l'></small><noframes id='KsK7l'>

              • <i id='KsK7l'><tr id='KsK7l'><dt id='KsK7l'><q id='KsK7l'><span id='KsK7l'><b id='KsK7l'><form id='KsK7l'><ins id='KsK7l'></ins><ul id='KsK7l'></ul><sub id='KsK7l'></sub></form><legend id='KsK7l'></legend><bdo id='KsK7l'><pre id='KsK7l'><center id='KsK7l'></center></pre></bdo></b><th id='KsK7l'></th></span></q></dt></tr></i><div class="qwawimqqmiuu" id='KsK7l'><tfoot id='KsK7l'></tfoot><dl id='KsK7l'><fieldset id='KsK7l'></fieldset></dl></div>
                  本文介紹了如果我使用 MySQLi 準備好的語句,是否需要轉義我的變量?的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

                  問題描述

                  如果我使用 MySQLi 準備好的語句,如下所示:

                  If I use MySQLi prepared statements like below:

                  $stmt = $con1->prepare("UPDATE Login SET Session='LoggedOut' where Session=?");
                  $stmt->bind_param('s',$Session);
                  $stmt->execute();
                  $stmt->close();
                  

                  我是否仍然需要使用 mysqli_real_escape_string(); 轉義像 $Session 這樣的變量,如下所示:

                  Do I still need to escape my variables like $Session with mysqli_real_escape_string(); like below:

                  $Session = mysqli_real_escape_string($con1, $_COOKIE['Session']);
                  $stmt = $con1->prepare("UPDATE Login SET Session='LoggedOut' where Session=?");
                  $stmt->bind_param('s',$Session);
                  $stmt->execute();
                  $stmt->close();
                  

                  推薦答案

                  不,如果您在應用程序的任何地方都使用準備好的語句,那么您就可以避免 SQL 注入.然而,一個重要的陷阱"是二階注入攻擊,當某些查詢使用準備好的語句而其他查詢不使用時,就會發生這種情況.

                  No, if you use prepared statements everywhere in your application you are safe from SQL injection. However, an important "gotcha" is 2nd order injection attacks which happen when some queries use prepared statements and others don't.

                  根據 this 類似的回答關于 SO 的問題:

                  According to this answer of a similar question on SO:

                  準備好的語句/參數化查詢足以防止對該語句的一階注入.如果您在應用程序的任何其他地方使用未檢查的動態 sql,您仍然容易受到二階注入的影響.

                  prepared statements / parameterized queries are sufficient to prevent 1st order injection on that statement. If you use un-checked dynamic sql anywhere else in your application you are still vulnerable to 2nd order injection.

                  總而言之,準備好的語句在發送的數據和 SQL 查詢本身之間創建了分離,確保數據不會被誤解為 SQL 查詢.但是,攻擊者仍然可以將 SQL 作為數據輸入,并且如果您使用準備好的語句,雖然在第一次存儲它時不會執行它,但在檢索所述結果時仍然必須小心.準備好的語句在該特定位置保護您的應用程序,但由于仍允許將 SQL 存儲在數據庫中,如果您稍后在沒有參數化的情況下使用該數據,您的應用程序是不安全的.

                  In summary, prepared statements create a separation between the data being sent and the SQL query itself, ensuring that the data can not be misinterpreted as the SQL query. However, an attacker can still enter SQL as data, and although it will not be executed when it is first stored if you are using prepared statements, you must still use caution when retrieving said results. Prepared statements protect your application in that particular place, but because SQL is still allowed to be stored in the database, your application is unsafe if you're later using that data without parameterization.

                  這篇關于如果我使用 MySQLi 準備好的語句,是否需要轉義我的變量?的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!

                  【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!

                  相關文檔推薦

                  store_result() and get_result() in mysql returns false(mysql 中的 store_result() 和 get_result() 返回 false)
                  Call to undefined function mysqli_result::num_rows()(調用未定義的函數 mysqli_result::num_rows())
                  PHP Prepared Statement Problems(PHP 準備好的語句問題)
                  mysqli_fetch_array returning only one result(mysqli_fetch_array 只返回一個結果)
                  PHP MySQLi Multiple Inserts(PHP MySQLi 多次插入)
                  How do I make sure that values from MySQL keep their type in PHP?(如何確保 MySQL 中的值在 PHP 中保持其類型?)

                  <tfoot id='OEMkz'></tfoot>
                    <i id='OEMkz'><tr id='OEMkz'><dt id='OEMkz'><q id='OEMkz'><span id='OEMkz'><b id='OEMkz'><form id='OEMkz'><ins id='OEMkz'></ins><ul id='OEMkz'></ul><sub id='OEMkz'></sub></form><legend id='OEMkz'></legend><bdo id='OEMkz'><pre id='OEMkz'><center id='OEMkz'></center></pre></bdo></b><th id='OEMkz'></th></span></q></dt></tr></i><div class="qwawimqqmiuu" id='OEMkz'><tfoot id='OEMkz'></tfoot><dl id='OEMkz'><fieldset id='OEMkz'></fieldset></dl></div>
                      <tbody id='OEMkz'></tbody>
                  1. <small id='OEMkz'></small><noframes id='OEMkz'>

                          <bdo id='OEMkz'></bdo><ul id='OEMkz'></ul>

                          <legend id='OEMkz'><style id='OEMkz'><dir id='OEMkz'><q id='OEMkz'></q></dir></style></legend>
                            主站蜘蛛池模板: 麻豆久久久9性大片 | 四虎在线观看 | 免费a网站 | 欧美成人免费在线视频 | 午夜精品久久久久久久99黑人 | 91电影| 国产精品久久久久久久久久 | 天天操夜夜操 | 欧美一级久久 | 亚洲天堂999 | 中文天堂网| 欧洲视频一区二区 | 精品国产久 | 超碰成人免费观看 | 日本黄色的视频 | 国产一区二区三区四区五区加勒比 | 婷婷丁香激情 | 国产观看 | 天天干b| 男女视频网站 | 中文字幕二区 | 国产午夜三级一区二区三 | 日韩欧美亚洲综合 | 久久精品这里精品 | 色桃网 | 国产成人精品免费视频大全最热 | 欧美日韩免费一区二区三区 | 成人超碰 | 欧美午夜视频 | 三区在线 | 欧美在线一区二区视频 | 天天操精品视频 | 91av精品| 亚洲欧美日韩高清 | 国产精品一区二区三区四区 | 欧美成人aaa级毛片在线视频 | 久久久久久中文字幕 | 成人高清在线 | 亚洲一区二区免费视频 | 欧美精品三区 | 亚洲第一成年免费网站 |