簡體   English   中英

PHP-HTML輸入字符串在MySQL中存儲為轉義序列字符串

[英]PHP - HTML input string is stored as escape-sequence string in MySQL

我有使用HTML,PHP,MySQL的基本網站。

HTML輸入:

C# - Developer's Guide "LIMITED EDITION"

變成

在PHP中:

C# - Developer\'s Guide \"LIMITED EDITION\"

在MySQL中:

C# - Developer\'s Guide \"LIMITED EDITION\"

在PHP中,我使用:

if(empty($_POST['book_title'])) {
    $errors['book_title'] = TRUE;
} else {
    $book_title = mysqli_real_escape_string($link, trim($_POST['book_title']));
}

$query1 = "INSERT INTO book(title) VALUES(?)";
if(!$errors && mysqli_stmt_prepare($stmt,$query1))
{
  mysqli_stmt_bind_param($stmt, "s", $book_title) or die("Bind param failed");
  if(!mysqli_stmt_execute($stmt)) {
    $errors['table_book'] = TRUE;
  }
} else {
  $errors['table_book'] = TRUE;
}

編輯:magic_quotes被關閉。 我正在使用PHP 7.0.3。

怎樣在PHP和MySQL中獲得HTML輸入呢?

如果可以幫助我,magic_quotes(我在博客的某處聽到)是什么?

問我是否需要其他信息。 幫我。

如上述評論和其他SO查詢中的“ Phil”所建議(當使用“我應在准備好的語句中使用mysqli_real_escape_string”進行搜索時),

僅使用Prepared Statement,而不是mysqli_real_escape_string()兩者結合使用

暫無
暫無

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

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