簡體   English   中英

PHP在使用前更改發布數據

[英]PHP changing post data before use it

我正在修改一個開源工具。 我在腳本中找不到所有功能。 所以我計划將自己的腳本包含在htacces的所有頁面中。 我想清除SQL注入的發布數據。 因此,我將此代碼添加到了自己的腳本中:

foreach($_POST as $key=>$value)
{
    $_POST[$key] = str_replace('bad chars for injections', '', $value);
}

foreach($_GET as $key=>$value)
{
    $_GET[$key] = str_replace('bad chars for injections', '', $value);
}

foreach($_REQUEST as $key=>$value)
{
    $_REQUEST[$key] = str_replace('bad chars for injections', '', $value);
}

這可以更改職位價值。 該工具只能使用清除的數據。 但是,如果該工具使用file_get_contents('php:// input')函數,則可以看到原始發布數據。 因此,如果使用這種方式,我將無法信任該工具。

有沒有辦法在工具使用之前更改這些輸入? 我的意思是實際上重寫功能。

不。應該不惜一切代價完全避免這種情況。

請改用准備好的語句 PHP文檔

如果應用程序專門使用准備好的語句,則開發人員可以確保不會發生SQL注入。

如果不確定如何使用准備好的語句,則網絡上有很多指南 例如:

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM