我需要将特定值插入到我正在使用 SQL 处理的表中(请参见下面的函数):
INSERT INTO *Table Name* (...) VALUES(...);
将要存储在此表中的值是涉及另一种编程语言的值,这些编程语言有很多奇怪的符号,包括单个反斜杠、*、美元符号等。
我怎样才能准确地插入值,因为它们在这个表中?
例如,当我键入“\2”时,它需要在表中返回 \2 而不仅仅是 2。我无法手动输入两个反斜杠来获取 \2。这是因为我通过 HTML 接收来自另一个用户的输入并使用 PHP 将其发送到我的表。我遇到的问题是正在输入的带有 SQL 的这些特殊字符并不是我打算将它们作为值的方式。
有没有办法用预先调用的某个字符串函数准确地输入这些值?其他方法将不胜感激!
数据库的附加信息:
服务器:通过 UNIX 套接字的 localhost
服务器类型:MySQL
服务器连接:未使用 SSL 文档
服务器版本:5.6.49-cll-lve - MySQL 社区服务器 (GPL)
潜在答案: $mysqli 是否定义如下?(我称之为 $db。)
$mysqli=mysqli_connect(...);
因此,该文字添加如下:
$query = "INSERT INTO Table (C1, ... Cn) VALUES('$C1', ... '$Cn')";
$stmt = $mysqli->prepare($query);
$stmt->bind_param("ss", $C1, ..., $Cn);
$stmt->execute();
mysqli_query($db, $query);