Link with "&": & 符号不插入数据库
Link with "&": ampersand not insert into database
如何在数据库中插入一个 link 和 html 特殊字符,如 &
(与符号)符号?当我插入它时,输出被切断了..
例如:这个link
https://www.youtube.com/watch?v=TCnxD9V9lGE&index=24&list=PLNVssP8zTtVk5asCmP703gEvR_lG-Ur-S
以及我插入后的输出:
&
(和号)符号,其余部分被切掉。
这是我的代码:
$data = "LINK with & (ampersand)";
$data = mysqli_real_escape_string($connect_db, $data);
您应该考虑使用准备好的查询。这将防止将特殊字符插入数据库时出现的大多数问题。 PDO 是使用准备好的语句的最佳方式 (imo)。这大致是您的代码使用 PDO 时的样子:
$connect_db = new PDO('mysql:dbname=yourdb;host=127.0.0.1;charset=utf8', 'root', '');
$url = //your url with ampersands
$insertquery = $connect_db->prepare("INSERT INTO table1 (urlstring, ...) VALUES (:url,...)");
$insertquery->bindParam(':url',$url);
$insertquery->execute();
熟悉准备好的查询也将有助于防止 SQL 注入。一旦您对 PHP 更有信心,请查看 PDO 指南:https://phpdelusions.net/pdo
如何在数据库中插入一个 link 和 html 特殊字符,如 &
(与符号)符号?当我插入它时,输出被切断了..
例如:这个link
https://www.youtube.com/watch?v=TCnxD9V9lGE&index=24&list=PLNVssP8zTtVk5asCmP703gEvR_lG-Ur-S
以及我插入后的输出:
&
(和号)符号,其余部分被切掉。
这是我的代码:
$data = "LINK with & (ampersand)";
$data = mysqli_real_escape_string($connect_db, $data);
您应该考虑使用准备好的查询。这将防止将特殊字符插入数据库时出现的大多数问题。 PDO 是使用准备好的语句的最佳方式 (imo)。这大致是您的代码使用 PDO 时的样子:
$connect_db = new PDO('mysql:dbname=yourdb;host=127.0.0.1;charset=utf8', 'root', '');
$url = //your url with ampersands
$insertquery = $connect_db->prepare("INSERT INTO table1 (urlstring, ...) VALUES (:url,...)");
$insertquery->bindParam(':url',$url);
$insertquery->execute();
熟悉准备好的查询也将有助于防止 SQL 注入。一旦您对 PHP 更有信心,请查看 PDO 指南:https://phpdelusions.net/pdo