如果我直接搜索字符串,它可以正常工作,但每当我将该字符串存储在变量中并尝试搜索它时,它会给我:
布尔(假)
这是我的代码
<?php
$mysqli = new mysqli("localhost", "root", "password", "database");
$roll_no='9999-SO-12';
echo $roll_no;
$res = $mysqli->query("SELECT name,title FROM student_data WHERE roll_no=$roll_no");
var_dump($res);
?>
但是每当我直接这样做时它工作正常 例如像这样
<?php
$mysqli = new mysqli("localhost", "root", "password", "database");
$roll_no='9999-SO-12';
$res = $mysqli->query("SELECT name,title FROM student_data WHERE roll_no='9999-SO-12'");
var_dump($res);
?>
那么我做错了什么?解决方案是什么?
答案 0 :(得分:1)
您将参数作为整数传递,尽管它是字符串。将您的查询更改为:
$mysqli->query("SELECT name,title FROM student_data WHERE roll_no='".$roll_no."'");
答案 1 :(得分:1)
做一些这样的改变:
$res = $mysqli->query("SELECT name,title FROM student_data WHERE roll_no='".$roll_no."'");
答案 2 :(得分:1)
请试一试。
$res = $mysqli->query("SELECT name,title FROM student_data WHERE roll_no='".$roll_no."'");