2012-05-14 29 views
0

我不是高手,使用PHP,但我必須涵蓋以下情況:PHP:addslashes()對回顯的HTML/JS字符串也有效嗎?

<?php 

    ... 

    if ($some_condition_is_met) { 
    echo ' ...a lot of HTML/JS statements I ...'; 
    } else { 
    echo ' ...a lot of HTML/JS statements II...'; 
    } 

?> 

我的問題是,HTML/JS語句包含單引號和雙引號。我能否使用addslashed()方法正確地轉義那些回顯的語句(它用於數據庫語句)?還是有另一種有效的方法?

+0

可能的重複[停止SQL注入PHP的最佳方法](http://stackoverflow.com/questions/60174/best-way-to-stop-sql-injection-in-php) – Quentin

+0

你需要什麼斜槓爲?除非你準備在SQL語句中使用字符串,否則用斜槓轉義是沒有意義的(即使不會將用於數據庫操作的addslashes完全破壞)。爲了輸出到html環​​境,你應該使用htmlspecialchars()。 –

回答

1

我相信你正在尋找mysql_real_escape_string函數。

+1

請使用比mysql_real_escape_string手動少一些的東西。通過轉義函數運行每個變量,然後將它連接成一個字符串會給程序員錯誤留下太多空間。 – Quentin

相關問題