Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Совсем не могу понять в чём дело, помогите!

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Опрос
Правильна ли запись SELECT
Для голосования и просмотра результатов опроса войдите или зарегистрируйтесь

> Описание: SELECT
yogeswar
Отправлено: 29 Апреля, 2016 - 18:36:07
Post Id


Гость


Покинул форум
Сообщений всего: 105
Дата рег-ции: Сент. 2012  
Откуда: Екатеринбург


Помог: 0 раз(а)




Совсем не могу понять в чём дело, помогите!
У меня есть таблица catalog1, в ней в столбце country есть много записей «Свердловская область». В столбце city достаточно записей с городом Арамиль. В столбце on_dolgen и в столбце mi_dolgni все значения равны 0. В столбцах predmet1 … predmet4 - школьные предметы.
Теперь, я пишу команды:
PHP:
скопировать код в буфер обмена
  1. echo implode(',',$country),'<br>';
  2. echo implode(',',$city),'<br>';
  3. echo implode(',',$l2),'<br>';
  4. $dydy = array();
  5. $sql2 = "SELECT * FROM catalog1 WHERE
  6. country IN('".implode(',',$country)."') and city IN('".implode(',',$city)."') and
  7. zanytost = 'Свободен' and (on_dolgen - mi_dolgni <= 30 or mi_dolgni - on_dolgen > 0) and
  8. (predmet1 IN('".implode(',',$l2)."') or predmet2 IN('".implode(',',$l2)."') or
  9. predmet3 IN('".implode(',',$l2)."') or predmet4 IN('".implode(',',$l2)."'))
  10. ";
  11. $result2 = mysql_query($sql2) or die(mysql_error());
  12. while($row2 = mysql_fetch_array($result2, MYSQL_NUM)){  
  13. $dydy[] = $row2;
  14. }
  15. echo "<pre>";print_r($dydy);echo "<pre>";
  16. $max30=count($dydy);
  17. echo $max30,'<br>';


Компьютер выдаёт:
Свердловская область,скайп
Сухой Лог,Арамиль,скайп
Математика,Подготовка к школе,Начальная школа,Музыка,Японский язык,Китайский язык,Химия,История
Array
(
)
0

В моей таблице достаточно строк, где country = Свердловская область, city = Арамиль, predmet1 = Математика.
Т.е. получаемый массив должен быть достаточно большим. Синтаксис команды SELECT тоже не вызывает сомнений. Однако массив нулевой. В чём может быть ошибка? Логика вроде простая. Таблицу внимательно смотрел. Помогите.
 
 Top
kuller
Отправлено: 29 Апреля, 2016 - 18:50:53
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 561
Дата рег-ции: Нояб. 2009  


Помог: 2 раз(а)




попробуй так сделать $dydy[] .= $row2; (точка)
 
 Top
yogeswar
Отправлено: 29 Апреля, 2016 - 18:57:40
Post Id


Гость


Покинул форум
Сообщений всего: 105
Дата рег-ции: Сент. 2012  
Откуда: Екатеринбург


Помог: 0 раз(а)




kuller пишет:
попробуй так сделать $dydy[] .= $row2; (точка)


Не помогло! Я упростил SELECT:
PHP:
скопировать код в буфер обмена
  1. $dydy = array();
  2. $sql2 = "SELECT * FROM catalog1 WHERE
  3. country IN($country)";
  4. $result2 = mysql_query($sql2) or die(mysql_error());
  5. while($row2 = mysql_fetch_array($result2, MYSQL_NUM)){  
  6. $dydy[] .= $row2;
  7. }

Выдаёт:
Notice: Array to string conversion in /var/www/podbor_rep_vibor.php on line 95
Unknown column 'Array' in 'where clause'
Строка 95, это команда
 
 Top
Viper
Отправлено: 29 Апреля, 2016 - 19:08:39
Post Id



Активный участник


Покинул форум
Сообщений всего: 4555
Дата рег-ции: Февр. 2007  
Откуда: Симферополь


Помог: 98 раз(а)




yogeswar пишет:
Я упростил SELECT
не нужно бездумно копировать.
CODE (htmlphp):
скопировать код в буфер обмена
  1. country IN('".implode(',',$country)."')


-----
Список фильмов с описанием, блекджеком и... для Joomla? -> https://киноархив[dot]com
Демо нового движка для сайта php.su -> php[dot]su, проект на гитхабе
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB