0

我有使用 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(我在博客的某个地方听说过)是什么?

问我是否需要任何其他信息。帮我。

4

1 回答 1

0

正如上述评论和其他 SO 查询中的“Phil”所建议的那样(当使用“我应该使用 mysqli_real_escape_string 和准备好的语句”进行搜索时),

仅使用Prepared Statement而不是mysqli_real_escape_string()两者的组合

于 2016-07-29T05:05:05.260 回答