Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php MySQL中使用VARBINARY列的Where子句_Php_Mysql_Binary - Fatal编程技术网

Php MySQL中使用VARBINARY列的Where子句

Php MySQL中使用VARBINARY列的Where子句,php,mysql,binary,Php,Mysql,Binary,我在MySQLip\u address中有一个列,它是VARBINARY(16),我正试图在PHP中以它为条件执行where子句: $ip_address = inet_pton($ip_address); $SQL = "SELECT location, added FROM ips WHERE ip_address = BINARY '" . $ip_a

我在MySQL
ip\u address
中有一个列,它是
VARBINARY(16)
,我正试图在
PHP
中以它为条件执行where子句:

       $ip_address = inet_pton($ip_address);

       $SQL = "SELECT location,
                      added
                 FROM ips
                WHERE ip_address = BINARY '" . $ip_address . "'";

       ...
但是,这将返回
0
行。我做错了什么?

尝试使用:


小心那类事情。插入到字符串中的原始二进制“垃圾”可以自然地包含SQL元字符(
),并破坏SQL。
$stmt = $conn->stmt_init();
$SQL = "SELECT location, added FROM ips WHERE ip_address = BINARY ?";
$stmt->prepare($sql);
$stmt->bind_param('s', $ip_address);
$stmt->bind_result($location, $added);
$stmt->execute();
$stmt->fetch();