Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/67.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查询无法按预期工作_Php_Mysql - Fatal编程技术网

PHP和Mysql查询无法按预期工作

PHP和Mysql查询无法按预期工作,php,mysql,Php,Mysql,我正在尝试制作一个web应用程序,我想用php脚本在mysql数据库中搜索。 但是我的代码并没有像预期的那样工作。 这是我的密码: $search=$_POST['search']; $sql_cautare="SELECT * FROM carti WHERE titlu = "$search""; 我有搜索表单..我想选择那些在搜索表单中输入的值。 有人能帮我吗?以下方法应该可以: $sql_cautare = "SELECT * FROM carti WHERE titlu = '$s

我正在尝试制作一个web应用程序,我想用php脚本在mysql数据库中搜索。 但是我的代码并没有像预期的那样工作。 这是我的密码:

$search=$_POST['search'];
$sql_cautare="SELECT * FROM carti WHERE titlu = "$search"";
我有搜索表单..我想选择那些在搜索表单中输入的值。
有人能帮我吗?

以下方法应该可以:

 $sql_cautare = "SELECT * FROM carti WHERE titlu = '$search'";
但在SQL中使用输入之前,您应该明确地进行一些输入清理

试试这个

$sql_cautare = $conn->prepare("SELECT * FROM carti WHERE titlu = ?");
$sql_cautare->bind_param('s', $search);
$sql_cautare->execute();

“从carti中选择*,其中titlu='$search'所以..我不应该使用双引号..对吗?是的,因为那样会终止字符串。你应该使用准备好的语句,而不是将用户输入注入查询。肯定还有其他错误,因为它仍然不起作用。不,现在,应该使用准备好的语句