php - mySQL CodeIgniter - Syntax Error Number: 1064 -


i'm trying wrap head around , can't seem figure out how query returns syntax error. knowlegde of mysql small i'm getting grips it.

this query i'm trying execute:

function _delete_leaf_node($id){  $query ="";  $query .=" select @myleft := lft, @myright := rgt, @mywidth := rgt - lft + 1"; $query .=" pages"; $query .=" id =".$id.";";  $query .=" delete pages lft between @myleft , @myright;"; $query .=" update pages set rgt = rgt - @mywidth rgt > @myright;"; $query .=" update pages set lft = lft - @mywidth lft > @myright;";      $this->_custom_query($query); 

}

this error returned:

you have error in sql syntax; check manual corresponds mysql server version right syntax use near 'delete pages lft = @myleft update pages set rgt = rgt + 1, lft = lft ' @ line 1

i have checked if right id passed. perhaps variables not set in proper manner? don't know how 1 check that.

any appreciated.

function _delete_leaf_node($id){      $query  =" select @myleft := lft, @myright := rgt, @mywidth := rgt - lft + 1";     $query .=" pages";     $query .=" id =".intval($id);      $this->_custom_query($query);      $this->_custom_query("delete pages lft between @myleft , @myright");     $this->_custom_query("update pages set rgt = rgt - @mywidth rgt > @myright");     $this->_custom_query("update pages set lft = lft - @mywidth lft > @myright"); } 

Comments