Php Mysql查询错误限制

Php Mysql查询错误限制,php,mysql,Php,Mysql,我写了一个网站,并使用php。什么时候写 $cat = mysql_query(" Select m.Image_link AS link , m.Name , m.ID , c.Name AS catName from movie m join has_category mc on m.ID = mc.movie_id join category c on c.ID = mc.category_id where c.Name = '

我写了一个网站,并使用php。什么时候写

$cat = mysql_query("
Select m.Image_link AS link
     , m.Name
     , m.ID
     , c.Name AS catName
  from movie m
  join has_category mc
    on m.ID = mc.movie_id 
  join category c
    on c.ID = mc.category_id
 where c.Name = '$category'
 ORDER 
    BY ID desc"
);
这个查询一切正常,但当ıinsert limit时,ıtake错误

@$sayfa=$_GET['s'];

$kacar=12;
$toplansayfa=ceil(mysql_num_rows($cat)/$kacar);
$baslangic=($sayfa * $kacar) - $kacar;


$bul_cat=mysql_query("
Select m.Image_link AS link
     , m.Name
     , m.ID
     , c.Name AS catName 
  from movie m 
  join has_category Mc
    on m.ID = mc.movie_id 
  join category c
    on c.ID = mc.category_id
 where c.Name = '$category' 
ORDER 
    BY ID desc 
 limit $baslangic, $kacar
");


echo mysql_error();->
您的SQL语法有错误;请查看与MySQL服务器版本对应的手册,以了解第1行的'-12,12'附近使用的正确语法


我的错误在哪里。感谢您的关注。

与许多SQL编程错误一样,查看您试图运行的查询的实际文本会有很大帮助

那么,试试这个:

$query = "Select movie.Image_link AS link, movie.Name, movie.ID, category.Name AS catName from (movie inner join has_category on movie.ID=has_category.movie_id inner join category on category.ID=has_category.category_id) where category.Name='$category' ORDER BY ID desc limit $baslangic, $kacar";

$bul_cat = mysql_query($query);   /*deprecated API! */
if (!$bul_cat) {
      echo "query failed: " . $query;
      echo mysql_error();   /* deprecated API! */
}

当您显示试图运行的实际查询时,几乎肯定会立即发现问题。我相信Paul Siegel的诊断是正确的。。。您的查询显示
限制-12,12
。你不能那样做™.

与许多SQL编程错误一样,查看您试图运行的查询的实际文本有很大帮助

那么,试试这个:

$query = "Select movie.Image_link AS link, movie.Name, movie.ID, category.Name AS catName from (movie inner join has_category on movie.ID=has_category.movie_id inner join category on category.ID=has_category.category_id) where category.Name='$category' ORDER BY ID desc limit $baslangic, $kacar";

$bul_cat = mysql_query($query);   /*deprecated API! */
if (!$bul_cat) {
      echo "query failed: " . $query;
      echo mysql_error();   /* deprecated API! */
}

当您显示试图运行的实际查询时,几乎肯定会立即发现问题。我相信Paul Siegel的诊断是正确的。。。您的查询显示
限制-12,12
。你不能那样做™.

不能设置负限制(或偏移)。检查你的计算。但是-问题可能是,
$sayfa
不是一个数字,因此转换为
0
。每次在新代码中使用数据库扩展时,它都会被弃用,多年来一直在PHP7中消失。如果你只是在学习PHP,那么就把精力花在学习
PDO
mysqli
数据库扩展和准备好的语句上。警告:如果您只是在学习PHP,请不要使用该界面。它是如此可怕和危险,以至于在PHP7中被删除。替换类和指南类说明了最佳实践。你的用户数据不存在,而且存在,并且可以被利用。有人知道新学习php/MySQL的人在哪里找到了通往死了很久的
MySQL\uu
API的路吗?他们不能看php在线手册:它充满了警告。这件事发生得太多了,一定有一些过时的教程信息。有人知道在哪里吗?我想问题的一部分是那些非常不称职和懒惰的教授偷走了他们学生的未来。@O.Jones,因为你问过。。。例如,有相当多这样的链接,它们在搜索结果中显示得相当高。很遗憾,即使是相当多的大学教科书(我以前看过)也只提供了一种用PHP编写查询的方法,那就是使用
mysql_*()
函数。你不能设置负限制(或偏移量)。检查你的计算。但是-问题可能是,
$sayfa
不是一个数字,因此转换为
0
。每次在新代码中使用数据库扩展时,它都会被弃用,多年来一直在PHP7中消失。如果你只是在学习PHP,那么就把精力花在学习
PDO
mysqli
数据库扩展和准备好的语句上。警告:如果您只是在学习PHP,请不要使用该界面。它是如此可怕和危险,以至于在PHP7中被删除。替换类和指南类说明了最佳实践。你的用户数据不存在,而且存在,并且可以被利用。有人知道新学习php/MySQL的人在哪里找到了通往死了很久的
MySQL\uu
API的路吗?他们不能看php在线手册:它充满了警告。这件事发生得太多了,一定有一些过时的教程信息。有人知道在哪里吗?我想问题的一部分是那些非常不称职和懒惰的教授偷走了他们学生的未来。@O.Jones,因为你问过。。。例如,有相当多这样的链接,它们在搜索结果中显示得相当高。令人遗憾的是,即使是相当多的大学教科书(我以前见过)也只提供了一种用PHP编写查询的方法,那就是使用
mysql_*()
函数。