2013-03-18 2 views
1

Я совершенно запутался с этой ошибкой, которая я получаю с этим кодомНе равно сравнения в CodeIgniter активных записей

$this->db->order_by('uid','DESC')->where('type!=',"Admin")->get('user_profile',$config['per_page'], $this->uri->segment(3)); 

Вот что я получаю ошибку

Error Number: 1064 

You have an error in your SQL syntax; check the manual that corresponds to your MySQL  server version for the right syntax to use near ''Admin' ORDER BY `uid` DESC LIMIT 10' at line 3 

SELECT * FROM (`user_profile`) WHERE `type!=` 'Admin' ORDER BY `uid` DESC LIMIT 10 

Filename: C:\wamp\www\proposal\system\database\DB_driver.php 

Line Number: 330 
+0

Попробуйте поместить пробел между 'type' и'! = ' – Jeemusu

+0

К сожалению, после исследования Google и StackOverflow, я нашел решение. Только один должен поместить пространство между оператором и полем. В моем случае $ this-> db-> где ('type! =', "Admin") –

ответ

5

Попробуйте ваш запрос как это. Используйте единые запятые для Admin вместо двойных запятых. И <> вместо! =

$this->db 
    ->where('type <>','Admin') 
    ->order_by('uid','DESC') 
    ->get('user_profile',$config['per_page'], $this->uri->segment(3)); 
+0

Спасибо Raheel за вашу помощь. Это действительно работает –

+0

Быстрое примечание. Не забывайте, что пространство между именем поля и «<>» должно быть «type <>», а не «type <>». Второй провалится. –

Смежные вопросы