2010-02-25 6 views
0

Когда я выполняю следующий код в php-скрипте. Набор результатов всегда пуст. Однако, когда я выполняю тот же запрос в консоли mysql или в phpmyadmin, он по праву показывает 18 строк в наборе результатов. Что здесь может быть не так.mysql_query возвращает пустой набор результатов, даже когда запрос действителен

$result_set = mysql_query("SELECT * FROM categories WHERE 1 ", $this->database_handle); 

var_dump($this->database_handle); 
var_dump($result_set); 
var_dump(mysql_num_rows($result_set)); 

- выход

resource(42) of type (mysql link) 
resource(48) of type (mysql result) 
int(0) bool(false) 

Однако, когда я пытаюсь вставить данные в этой таблице, вставка безупречна.

Как было предложено в некоторых из предыдущих ответов я уже пробовал несколько комбинаций, как

$result_set = mysql_query("SELECT * FROM categories WHERE 1=1 ", $this->database_handle); 
$result_set = mysql_query("SELECT * FROM categories", $this->database_handle); 
$result_set = mysql_query("select category_id, name from `categories` where `name` like 'cat-1'", $this->database_handle); 
$result_set = mysql_query("SELECT category_id,name FROM categories WHERE 1 ", $this->database_handle); 

-

structure of table 

Field   Type   Null Default Comments 
category_id int(11) No  
name    varchar(255) No    

Любая помощь очень ценится.

+0

настраиваете вы базу данных по умолчанию при открытии соединения? Это приведет к сбою SELECT, хотя я не знаю, почему работают INSERT. – staticsan

+0

Что появляется в ваших журналах запросов при запуске скрипта? – Martin

ответ

0

Проблема была из-за «\ n'in строку запроса, которую я надевал, потому что я хотел использовать ту же строку, как для запроса, а также выкачать его на экран.

Он начал работать нормально, как только я удалил символ \ n из строки.

Забавная часть, хотя в этом случае библиотека php mysql вела себя странно. Не было никаких предупреждений или ошибок.

С уважением Нитин

0

Изменить запрос

"SELECT * FROM categories WHERE 1=1 " 
+1

Или еще лучше, 'SELECT * FROM categories' –

+0

Привет! Я уже пробовал все эти запросы, и они просто не работают. Infact, когда я использую select count (*) из категорий, resultet имеет 1 строку со значением 0. Когда я выполняю тот же запрос в командной строке mysql, он дает мне правильный результат :( – user210504

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