這將是一個非常簡單的問題,但我的腦袋正在旋轉。PHP SQL查詢如何具有'變量
我在一個web服務中使用php。我收到的一個項目是一個字符串,我將其保存到一個sql數據庫中。
問題是字符串必須能夠遏制「但是當我構建像下面
$query = "INSERT INTO TABLE (COLUMN1) VALUES ('{$_POST('string')}')";
如果它拋出SQL查詢錯誤,查詢」被使用。
任何解決方案
感謝
這將是一個非常簡單的問題,但我的腦袋正在旋轉。PHP SQL查詢如何具有'變量
我在一個web服務中使用php。我收到的一個項目是一個字符串,我將其保存到一個sql數據庫中。
問題是字符串必須能夠遏制「但是當我構建像下面
$query = "INSERT INTO TABLE (COLUMN1) VALUES ('{$_POST('string')}')";
如果它拋出SQL查詢錯誤,查詢」被使用。
任何解決方案
感謝
您需要正確逃脫你的字符串,你插入到你的數據庫。
MySQLi的資源:http://php.net/manual/en/mysqli.real-escape-string.php
我認爲你正在尋找脫穎而出的字是逃生。
看看這個:How does one escape special characters when writing SQL queries?
它總是最好使用對涉及用戶輸入查詢一個準備好的語句。 您的SQL字符串必須是這樣的:
$query = "INSERT INTO table (column1) VALUES(?)";
見mysqli_prepare文檔,如果您使用的mysqli。 如果你使用的是PHP框架,你的框架可能會提供一個更簡單的實現。
結帳this article爲什麼它更好地使用準備好的語句的原因。