<MyRusakov.ru />

Создание крупного проекта на Java с нуля

Создание крупного проекта на Java с нуля

Данный курс научит Вас создавать крупные проекты на Java грамотно и быстро. В курсе Вы увидите создание большой и сложной программы на Java абсолютно с нуля.

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

В рамках упражнений курса Вы параллельно со мной будете создавать свою большую программу на Java, что даст Вам необходимую практику, после которой для Вас уже не будет разницы, какого размера создавать программы.

Подробнее
Подписка

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Каким движком Вы предпочитаете пользоваться?

Форум сайта MyRusakov.ru

Функция fetch_assoc()
10.07.2012 20:24:48 Функция fetch_assoc() Сообщение #1
RussianPro

RussianPro

Эксперт

Эксперт

Дата регистрации:
14.07.2011 01:32:38

Сообщений: 114

Из-за чего может вылезти ошибка Fatal error: Call to a member function fetch_assoc() on a non-object?
Профиль Ответить
10.07.2012 20:26:11 Функция fetch_assoc() Сообщение #2
Admin

Admin

Администратор

Администратор

Дата регистрации:
27.05.2010 21:23:42

Сообщений: 3063

Например, из-за ошибки в запросе. Или вызов метода идёт не через объект.
Профиль Ответить
10.07.2012 20:36:27 Функция fetch_assoc() Сообщение #3
RussianPro

RussianPro

Эксперт

Эксперт

Дата регистрации:
14.07.2011 01:32:38

Сообщений: 114

У меня есть форма поиска. И в ней много полей. Не буду все их перечислять, а возьму для примера только 4 из них (realty, square, value, loca).
Обработчик:
<?php
if (($realty !== '') && ($value == '') && ($square == '') && ($location == 'off')) {
for ($i = 0; $i < count($realty); $i++) {
$result_set = $mysqli->query("SELECT * FROM projects WHERE `deal` = '$deal' AND `realty` = '$realty[$i]' ORDER BY `id` DESC LIMIT $shift, $count";
}
}
if (($realty == '') && ($value !== '') && ($square == '') && ($location == 'off')) $result_set = $mysqli->query("SELECT * FROM projects WHERE `deal` = '$deal' AND `vfrom` >= '$value' AND `curresy` = '$curresy' ORDER BY `id` DESC LIMIT $shift, $count";
if (($realty == '') && ($value == '') && ($square !== '') && ($location == 'off')) $result_set = $mysqli->query("SELECT * FROM projects WHERE `deal` = '$deal' AND `sfrom` >= '$square' AND `unit` = '$unit' ORDER BY `id` DESC LIMIT $shift, $count";
if (($realty == '') && ($value == '') && ($square == '') && ($location == 'on')) {
for ($i = 0; $i < count($loca); $i++) {
if (($move !== '') || ($move !== ' ')) $result_set = $mysqli->query("SELECT * FROM projects WHERE `deal` = '$deal' AND `location` = '$loca[$i]' AND `move` = '$move' ORDER BY `id` DESC LIMIT $shift, $count";
else $result_set = $mysqli->query("SELECT * FROM projects WHERE `deal` = '$deal' AND `location` = '$loca[$i]' ORDER BY `id` DESC LIMIT $shift, $count";
}
}
?>


Допустим я заполняю только поле realty. Должно сработать условие где ТОЛЬКО realty !== ''. А вместо этого вылетает ошибка.
Профиль Ответить
10.07.2012 20:39:25 Функция fetch_assoc() Сообщение #4
Admin

Admin

Администратор

Администратор

Дата регистрации:
27.05.2010 21:23:42

Сообщений: 3063

Если код иногда срабатывает, значит, ошибка 100% в запросе. Найти ошибку здесь можно так:
1. Вывести запрос через echo.
2. Попытаться найти в нём ошибку и исправить.
3. Если не в состоянии определить, надо зайти в PHPMyAdmin и попытаться его выполнить, там уже будет сразу написана конкретная ошибка.
Профиль Ответить
10.07.2012 20:42:18 Функция fetch_assoc() Сообщение #5
RussianPro

RussianPro

Эксперт

Эксперт

Дата регистрации:
14.07.2011 01:32:38

Сообщений: 114

А можно поподробнее про 3 пункт? Я с phpMyAdmin на Вы...
Профиль Ответить
10.07.2012 20:47:25 Функция fetch_assoc() Сообщение #6
Admin

Admin

Администратор

Администратор

Дата регистрации:
27.05.2010 21:23:42

Сообщений: 3063

Зайдите в таблицу там, с которой работаете. И выберите вкладку "SQL", в текстовую область вставьте запрос и нажмите "OK".
Профиль Ответить
10.07.2012 20:48:01 Функция fetch_assoc() Сообщение #7
RussianPro

RussianPro

Эксперт

Эксперт

Дата регистрации:
14.07.2011 01:32:38

Сообщений: 114

Спасибо Вам большое. Буду искать.
Профиль Ответить
10.07.2012 21:03:48 Функция fetch_assoc() Сообщение #8
RussianPro

RussianPro

Эксперт

Эксперт

Дата регистрации:
14.07.2011 01:32:38

Сообщений: 114

Проверил все запросы. Ни в одном из них ошибок нет!
Профиль Ответить
10.07.2012 21:41:55 Функция fetch_assoc() Сообщение #9
RussianPro

RussianPro

Эксперт

Эксперт

Дата регистрации:
14.07.2011 01:32:38

Сообщений: 114

Ошибка всё равно вылетает!
Профиль Ответить
10.07.2012 23:33:25 Функция fetch_assoc() Сообщение #10
Admin

Admin

Администратор

Администратор

Дата регистрации:
27.05.2010 21:23:42

Сообщений: 3063

Запросы, которые Вы выполняли в PHPMyAdmin, Вы откуда брали, как их получили? Сами составили?
Профиль Ответить