这是执行此mysql查询的正确方法

时间:2011-12-29 15:54:12

标签: php mysql

这是我的表

enter image description here

我正在尝试将所有ID归入主要类别。这是完美的,但它是正确的做法

    FROM category WHERE (lft >= '$left') AND (rgt <='$right')

    $allcat_ids = array();

    $cat_id =  mysql_real_escape_string($_GET['cat_id']);

    $res = mysql_query("SELECT lft, rgt FROM category WHERE cat_id = '$cat_id'");
    while ($category = mysql_fetch_assoc($res)) 
       {
           $left = $category['lft'];
           $right = $category['rgt'];
       }


    $res = mysql_query("SELECT cat_id, lft, rgt FROM category WHERE (lft >= '$left') AND (rgt <='$right')");`
    while ($category = mysql_fetch_object($res)) 
       {

        $allcat_ids[] = $category->cat_id; 

       }

1 个答案:

答案 0 :(得分:0)

看起来没事。>=<=除外;左右值应该是唯一的。它有效吗?

PS注意注意(如果可能的话,使用prepared statements和PDO)