Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/257.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,我正在尝试用PHP为我的MySQL数据库创建一个简单的搜索函数。我尝试过不同的练习,但结果都一样。通过对print\r的测试,我认为问题在于查询,但我不明白为什么它不起作用。有人有主意吗?我的代码如下: html <form action="search.php" method="get"> <div class="input-field"> <input id="search" name="search" type="search"

我正在尝试用PHP为我的MySQL数据库创建一个简单的搜索函数。我尝试过不同的练习,但结果都一样。通过对print\r的测试,我认为问题在于查询,但我不明白为什么它不起作用。有人有主意吗?我的代码如下:

html

<form action="search.php" method="get">
     <div class="input-field">
          <input id="search" name="search" type="search" placeholder="Search lesson plans" required>
              <label for="search"><i class="material-icons">search</i></label>
              <i class="material-icons" id="closesearch">close</i>
     </div>
</form>
有人能看出我做错了什么吗

/Håkan

  • 您没有在循环中打印
    $r->Subject
  • 您没有正确地将
    $search
    变量添加到查询中
您的查询应该如下所示(如果您坚持使用单勾号
):

但如果您想继续使用:

以及用于显示/回显数据:

echo '<div>
        <p>'.$r->Subject.'</p>
      </div>';
echo'
“.$r->主题。”

';

您可以参考单勾(
)和双勾(
)的区别.

你怎么知道它不起作用?嗯..你没有在
$r->Subject;
?上使用echo,并且在查询时使用双勾号?请说明你得到的错误或遇到的问题。你的echo语句是错误的,应该是echo$r->Subject;我在搜索时什么也没有得到。我使用了
打印($query)
并获取以下信息:
mysqli\u结果对象([current\u field]=>0[field\u count]=>14[length]=>[num\u rows]=>0[type]=>0)
。这对我使用的顺序有什么影响吗?和
?谢谢!现在工作!但是为什么用另一种方式进行查询却不起作用呢?在视频教程中,它带有花括号。因为只有一个滴答声?
$foo=hello;回音“$foo earth”显示:$foo earth。如果被双引号包围,它将显示:hello earth。查看您的查询日志。@Håkan-是的,它有。您可以再次查看正在查看的教程。我敢打赌教程使用花括号时使用了双勾号。啊,好的,谢谢大家。我是新手,不知道有什么不同@Logan Wayne-是的,本教程使用双刻度!
LessonPlans
Id | Subject | Level | Aim | Text | Language
$query = $link->query('SELECT * FROM LessonPlans WHERE Subject LIKE "%'.$search.'%" OR Level LIKE "%'.$search.'%" OR Aim LIKE "%'.$search.'%" AND Language="English"');
$query = $link->query("SELECT * FROM LessonPlans WHERE Subject LIKE '%{$search}%' OR Level LIKE '%{$search}%' OR Aim LIKE '%{$search}%' AND Language='English'");
echo '<div>
        <p>'.$r->Subject.'</p>
      </div>';