在PHP 中使用魔法引號處理「每個引號前都有斜槓」問題
您遇到了一個問題,您的PHP 表單在前面新增了一個提交時每個雙引號前都有「」字元。這可能是由於您的伺服器上啟用了「魔術引號」功能。
魔術引號會自動轉義表單提交和其他輸入資料中的某些字符,包括雙引號。雖然此功能旨在防止 SQL 注入攻擊,但它可能會導致資料完整性問題,並且通常被認為已經過時。
要解決此問題,您可以使用 stripslashes() 函數在處理之前刪除不需要的斜線文字。使用stripslashes() 將以下條件加入您的程式碼:
<code class="php">if (get_magic_quotes_gpc()) { $your_text = stripslashes($your_text); }</code>
使用stripslashes() 處理文字後,您可以正常使用產生的$your_text 變量,而且它不會包含任何意外的斜槓。
關於禁用魔術引號:
正如您所提到的,您擁有伺服器的 root 存取權。通常建議禁用魔術引號來編寫結構良好且安全的程式碼。禁用它的原因包括:
要停用魔術引號,請編輯伺服器的 php.ini 檔案並將 magic_quotes_gpc 指令設為 Off。更改完成後,重新啟動您的網頁伺服器以使變更生效。
請記住在禁用魔術引號後徹底測試您的應用程序,以確保它仍然按預期運行。
以上是如何使用 PHP 的魔術引號解決表單提交中意外的斜線問題?的詳細內容。更多資訊請關注PHP中文網其他相關文章!