2016-04-13 59 views
0

好吧,我是一個總新手,並不知道在哪裏把修剪功能放在開發人員爲客戶創建的代碼上。當前窗體在任何撇號之前放置「\」,並且我使用了Google解決方案並試圖在文件中放置函數,但是我所做的每件事都打破了客戶的窗體。任何幫助表示讚賞。適當修剪功能

目前的結構是:

$dd_description = $_POST['dd_description']; 

和形式審查頁:

Description:<strong> '. $dd_description .'</strong><br /> 

我似乎無法在什麼地方「微調」

+0

不確定你的意思,但你可以嘗試類似'str_replace('\','',$ dd_description)''去除'\'。聽起來好像它已經通過一個函數來傳遞輸出。您應該小心如何刪除它們,以免直接將用戶輸入打印到頁面上,因爲這可能會導致XSS漏洞。 – Mikey

+0

這是由另一個人爲客戶開發的。我現在處於一個略微凌駕於我頭上的角色,但我會研究這一點,看看你是否陷入了漏洞。謝謝! –

回答

0

出於安全原因,不建議只允許未分析的POST變量出現在用戶網頁上。

您是否曾嘗試在代碼中添加stripslashes()?

Description:<strong> '. stripslashes($dd_description) .'</strong><br /> 

我建議進一步確保輸入數據,也許至少包裹strip_tags。

+0

謝謝。再一次,這麼簡單。我曾試過一個全球性的striplashes功能,但它不起作用。沒有太多的領域可以追加這個,它工作得很好。我知道它必須是一個簡單的解決方案,但我仍然對這些微妙的變化感到陌生,並且不斷用不必要的引號和括號將其複雜化。 –

+0

好的,在這種情況下可能值得做這樣的事情。 [code] foreach($ _ POST爲$ key => $ val){ $ _POST [($ key)] = stripslashes($ val); } [/ code] – RefreshCarts

+0

我曾嘗試過,但它沒有奏效。我很可能沒有把這個功能放在正確的位置上。至於「不推薦」評論,我知道這個表單是由開發人員爲客戶構建的。我現在正在接手,但並不合格。我肯定會研究這一點,以確保它最初建造的方式沒有任何問題。它通過幕後的一個functions.php文件進行。 –

0

自動轉義單引號建議Magic Quotes處於打開狀態。 Here's how to disable Magic Quotes

魔術引號可能會保護您的SQL查詢免受SQL注入,因此需要對其進行適當調查。如果是這種情況,則建議將代碼轉換爲預準備語句,這些語句不需要SQL注入的任何字符串處理。