Русский English Deutsch Українська Қазақша

Next Generation CMS :: Форум поддержки

Заинтересовала наша система? Тогда этот форум для Вас!

Вы не вошли.

#1 2009-09-29 14:32:42

RMC
Участник
Здесь с 2009-07-01
Сообщений: 151
Рейтинг :   
Сайт

ошибка mysql

вроде сделал шаблон, на локалке двиг погонял..
решил залить на хост и возникла проблема..

после установки - вверху сайта выдается ошибка..
MySQL ERROR [select]: SELECT day(from_unixtime(postdate)) as day, count(id) as count FROM ng_news WHERE approve = '1' AND postdate >= unix_timestamp('2009-09-01 00:00:00') AND postdate < unix_timestamp(date_add('2009-09-01 00:00:00', interval 1 month)) group by to_days(from_unixtime(postdate))
(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 '(from_unixtime(postdate)) as day, count(id) as count FROM ng_ne

версия сервера sql
Версия сервера: 4.0.27-standard
Версия протокола: 10
Сервер: Localhost via UNIX socket

phpMyAdmin - 2.9.0
Версия MySQL-клиента: 3.23.58
Использованы расширения PHP: mysql

при вхождении в админку на первой странице, где должна быть инфа о движке и т.д. - пусто..
при добавлении динамической новости..
Not Acceptable
An appropriate representation of the requested resource /engine/admin.php could not be found on this server.
Apache/2.0.53 (ASPLinux) Server at *** Port 80

хотя стастич. страницы без проблем добавляются sad

что за ошибка такая и как её можно победить?
спасибо..

Отредактировано RMC (2009-09-29 14:37:02)

Вне форума

#2 2009-09-29 15:46:41

vitaly
Администратор
Откуда: Россия
Здесь с 2008-10-08
Сообщений: 2,788
Рейтинг :   115 

Re: ошибка mysql

А ты точно корректно перелил БД с локального компьютера на хостинг?

Вне форума

#3 2009-09-29 19:00:10

RMC
Участник
Здесь с 2009-07-01
Сообщений: 151
Рейтинг :   
Сайт

Re: ошибка mysql

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

Вне форума

#4 2009-09-30 13:45:34

vitaly
Администратор
Откуда: Россия
Здесь с 2008-10-08
Сообщений: 2,788
Рейтинг :   115 

Re: ошибка mysql

Т.е. установил нулёвый двиг на хостинг и сразу же возникли проблемы?

Вне форума

#5 2009-09-30 14:07:59

RMC
Участник
Здесь с 2009-07-01
Сообщений: 151
Рейтинг :   
Сайт

Re: ошибка mysql

именно так..
увы, хостинг сменить не могу, т.к. есть свои "заморочки".
как это победить - не знаю.. админ хоста тоже ;)

Отредактировано RMC (2009-09-30 14:40:06)

Вне форума

#6 2009-09-30 14:53:37

vitaly
Администратор
Откуда: Россия
Здесь с 2008-10-08
Сообщений: 2,788
Рейтинг :   115 

Re: ошибка mysql

Проверь, таблицы в БД вообще создались хоть?

Вне форума

#7 2009-09-30 15:03:03

RMC
Участник
Здесь с 2009-07-01
Сообщений: 151
Рейтинг :   
Сайт

Re: ошибка mysql

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

таблица     Действие     Записи     Тип    Размер    Накладные расходы
    ng_category                             0    MyISAM    1.0 КБ    -
    ng_comments                             0    MyISAM    1.0 КБ    -
    ng_config                             1    MyISAM    2.2 КБ    -
    ng_files                             0    MyISAM    1.0 КБ    -
    ng_flood                             0    MyISAM    1.0 КБ    -
    ng_images                             0    MyISAM    1.0 КБ    -
    ng_ipban                             0    MyISAM    1.0 КБ    -
    ng_news                             0    MyISAM    2.0 КБ    -
    ng_news_map                             0    MyISAM    1.0 КБ    -
    ng_static                             0    MyISAM    1.0 КБ    -
    ng_users                             1    MyISAM    4.1 КБ    -
    ng_users_pm                             0    MyISAM    1.0 КБ    -
    12 таблиц(ы)     Всего    2    MYISAM    17.3 КБ    0 Байт

Вне форума

#8 2009-09-30 19:53:24

RMC
Участник
Здесь с 2009-07-01
Сообщений: 151
Рейтинг :   
Сайт

Re: ошибка mysql

создал на локалке.
сразу обратил внимание на разницу в полях таблиц. на локалке есть еще поле Сравнение, где указано utf8_general_ci
на хосте такого нет вообще.. sad
попробовал сделать импорт своей таблицы..
получил
Ошибка

SQL-запрос:

-- --------------------------------------------------------
--
-- Структура таблицы `ng_category`
--
CREATE TABLE `ng_category` (
`id` int( 10 ) NOT NULL AUTO_INCREMENT ,
`position` int( 10 ) default NULL ,
`name` varchar( 50 ) NOT NULL default '',
`alt` varchar( 50 ) NOT NULL default '',
`flags` char( 10 ) default '',
`tpl` char( 20 ) default '',
`number` int( 11 ) default '0',
`parent` int( 10 ) default '0',
`description` text,
`keywords` text,
`icon` varchar( 255 ) NOT NULL ,
`alt_url` text,
`orderby` varchar( 30 ) default 'id desc',
`posts` int( 11 ) default '0',
`posorder` int( 11 ) default '0',
`poslevel` int( 11 ) default '0',
PRIMARY KEY ( `id` )
) ENGINE = MYISAM DEFAULT CHARSET = utf8 AUTO_INCREMENT =1;



Ответ MySQL: 
#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 'DEFAULT CHARSET=utf8 AUTO_INCREMENT=1' at line 19

может ли быть описанная проблема из-за этого отстуствующего поля, или это поле кодировок не влияет и ошибка
MySQL ERROR [select]: SELECT day(from_unixtime(postdate)) as day, count(id) as count FROM ng_news WHERE approve = '1' AND postdate >= unix_timestamp('2009-09-01 00:00:00') AND postdate < unix_timestamp(date_add('2009-09-01 00:00:00', interval 1 month)) group by to_days(from_unixtime(postdate))
возникает по другой причине?

Отредактировано RMC (2009-09-30 19:56:42)

Вне форума

#9 2009-09-30 20:24:54

Amarelius
Модератор
Откуда: Kiev
Здесь с 2008-10-24
Сообщений: 639
Рейтинг :   69 
Сайт

Re: ошибка mysql

версия sql какая?
скорее всего твоя версия не поддерживает такую форму запроса
-----------------------------------------------
Только что глянул, так и есть, если у тебя версия сервера 4.0, то функция DAY() у тебя работать не будет. Она появилась только в v4.1.1
-----------------------------------------------
Еще раз глянул, можно заменить функцией DAYOFMONTH()

Отредактировано Amarelius (2009-09-30 20:41:37)


Всегда ищу разработчиков в Киеве!
Ищешь работу программистом, пиши мне на ArnitUA@gmail.com

Вне форума

#10 2009-09-30 20:57:11

RMC
Участник
Здесь с 2009-07-01
Сообщений: 151
Рейтинг :   
Сайт

Re: ошибка mysql

версия сервера sql
Версия сервера: 4.0.27-standard
Версия протокола: 10
Сервер: Localhost via UNIX socket
(вроде писал в 1 посте wink)

так что проблема видимо таки в стареньком сервере..
насколько безболезненно и сложно заменить функцию?

спасибо

Вне форума

#11 2009-09-30 21:02:24

Amarelius
Модератор
Откуда: Kiev
Здесь с 2008-10-24
Сообщений: 639
Рейтинг :   69 
Сайт

Re: ошибка mysql

Надо просто во всех запросах, которые есть в движке заменить DAY на DAYOFMONTH,
А если по грамотному, то сначала проверь хоть на одном запросе через phpMySqlAdmin (по идее должен быть у тебя на сервере)

Отредактировано Amarelius (2009-09-30 21:05:07)


Всегда ищу разработчиков в Киеве!
Ищешь работу программистом, пиши мне на ArnitUA@gmail.com

Вне форума

#12 2009-09-30 21:34:35

RMC
Участник
Здесь с 2009-07-01
Сообщений: 151
Рейтинг :   
Сайт

Re: ошибка mysql

гм.. а можно чуть по-подробнее?
не совсем понял где и как это сделать (ньюб пока.. sad)

Вне форума

#13 2009-09-30 21:46:47

Amarelius
Модератор
Откуда: Kiev
Здесь с 2008-10-24
Сообщений: 639
Рейтинг :   69 
Сайт

Re: ошибка mysql

По идее (но не обязательно) у тебя в панели управления хоста должна быть утилитка phpMyAdmin, так вот, заходишь в нее и там будет кнопочка (или ссылочка) "Выполнить запрос", щелкаешь, в большое текстовое поле вводишь что-то типа SELECT DAYOFMONTH(from_unixtime(postdate)) as day, count(id) as count FROM ng_news жмешь "Выполнить" и смотришь результат, если не матюкнулось и корректно обработало (а если матюкнется ты это сразу поймешь), то все ОК и ты можешь потихоньку начинать перелопачивать движек заменяя DAY на DAYOFMONTH


Всегда ищу разработчиков в Киеве!
Ищешь работу программистом, пиши мне на ArnitUA@gmail.com

Вне форума

#14 2009-09-30 21:58:31

RMC
Участник
Здесь с 2009-07-01
Сообщений: 151
Рейтинг :   
Сайт

Re: ошибка mysql

матюкнулося wink)

Ошибка

SQL-запрос: 

SELECT DAYOFMONTH( from_unixtime( postdate ) ) AS
DAY , count( id ) AS count
FROM ng_news
LIMIT 0 , 30

Ответ MySQL: 
#1140 - Mixing of GROUP columns (MIN(),MAX(),COUNT()...) with no GROUP columns is illegal if there is no GROUP BY clause

может конечно потому, что новостей нет..
но я их и добавить то не могу. :(

Отредактировано RMC (2009-09-30 22:01:08)

Вне форума

#15 2009-09-30 22:13:07

Amarelius
Модератор
Откуда: Kiev
Здесь с 2008-10-24
Сообщений: 639
Рейтинг :   69 
Сайт

Re: ошибка mysql

Главное что DAYOFMONTH проглатило, значить должно работать, а сейчас матюкнулось, потому-что count без GROUP BY не используеться. Попробуй такой запрос SELECT DAYOFMONTH(from_unixtime(postdate)) as day, count(id) as count FROM ng_news WHERE approve = '1' AND postdate >= unix_timestamp('2009-09-01 00:00:00') AND postdate < unix_timestamp(date_add('2009-09-01 00:00:00', interval 1 month)) group by to_days(from_unixtime(postdate))


Всегда ищу разработчиков в Киеве!
Ищешь работу программистом, пиши мне на ArnitUA@gmail.com

Вне форума

#16 2009-09-30 22:18:30

RMC
Участник
Здесь с 2009-07-01
Сообщений: 151
Рейтинг :   
Сайт

Re: ошибка mysql

это проканало..

MySQL вернула пустой результат (т.е. ноль рядов). (Запрос занял 0.0004 сек)
SQL-запрос:
SELECT DAYOFMONTH( from_unixtime( postdate ) ) AS
DAY , count( id ) AS count
FROM ng_news
WHERE approve = '1'
AND postdate >= unix_timestamp( '2009-09-01 00:00:00' )
AND postdate < unix_timestamp( date_add( '2009-09-01 00:00:00', INTERVAL 1
MONTH ) )
GROUP BY to_days( from_unixtime( postdate ) )
LIMIT 0 , 30

осталось разобратся где что менять.. wink
если есть возможность и время помочь стукни, плз в аську 127280650 а то долго так вопросы-ответы постить..
окончательный вариант уже выложу на форум, если кто столкнется с таким "старинным" хостингом

Вне форума

#17 2009-09-30 22:24:10

vitaly
Администратор
Откуда: Россия
Здесь с 2008-10-08
Сообщений: 2,788
Рейтинг :   115 

Re: ошибка mysql

RMC, самый правильный вариант всё-таки сменить хостера.
Либо обновить mysql на существующем хостинге - у вас там совсем уж древняя версия mysql установлена.

Вне форума

#18 2009-09-30 22:29:59

Amarelius
Модератор
Откуда: Kiev
Здесь с 2008-10-24
Сообщений: 639
Рейтинг :   69 
Сайт

Re: ошибка mysql

Все немного сложнее чем ты думаешь, поможет тебе рефакторинг всех запросов в движке и его плагинах, возможно придется менять и другие не поддерживаемые структуры запросов, а при обновлении на новую версию движка делать эту процедуру заново.
Мой совет, обратись к vitaly'ю, он непосредственно ведет разработку системы и если он проделает эту процедуру, то проблем со следующими релизами быть не должно, а также он точно знает где в движке все эти запросы прячутся. Тем более что в спецификации движка указанно

СИСТЕМНЫЕ ТРЕБОВАНИЯ
----------------------------
- Apache 1.x/2.x
- PHP 4.3.x
- MySQL 4.x/5.x

т.е. такой рефакторинг подгонит движек под системные требования...
-------------------------------------------------------
пысы. Меняй хостера, так дешевле, ведь системные требования теперь точно поменяют :lol:

Отредактировано Amarelius (2009-09-30 22:32:30)


Всегда ищу разработчиков в Киеве!
Ищешь работу программистом, пиши мне на ArnitUA@gmail.com

Вне форума

#19 2009-09-30 22:37:43

vitaly
Администратор
Откуда: Россия
Здесь с 2008-10-08
Сообщений: 2,788
Рейтинг :   115 

Re: ошибка mysql

Ага, особенно с учётом того, что я вот этот документик хочу подправить - указать, что PHP 5 минимум нужен, да и mysql скорее всего тоже 5й пропишу.

Появляется всё больше полезных функций, которых не было в старых версиях PHP/MySQL, а хостингов на которых стоят старые версии софта наоборот становится всё меньше. Так что завязываться на поддержку старых версий просто нет смысла.

Вне форума

#20 2009-09-30 22:38:15

RMC
Участник
Здесь с 2009-07-01
Сообщений: 151
Рейтинг :   
Сайт

Re: ошибка mysql

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

офтоп
на самом деле все проще...
есть сайт университета, написанный 100 лет назад (ну по крайней мере где-то тогда-же, когда и сервак с этой версий sql подняли), есть факультет (географический), где я работаю, и получил "партийное" задание сделать отдельный "подсайт", со своим меню, шапкой, наполнением и т.д.
нам выделили фтп, поддомен, сделали базу, я долго выбирал движки (ломанный dle - как-то несолидно, из новых free приглянулся ngcms простотой и логикой оформления, остальные уж очень местами заумные). и вот, когда уже доделал диз, вроде всем уже понравился - начал заливать и такая бяка.. :(

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

Отредактировано RMC (2009-09-30 22:43:16)

Вне форума

#21 2009-09-30 22:41:23

vitaly
Администратор
Откуда: Россия
Здесь с 2008-10-08
Сообщений: 2,788
Рейтинг :   115 

Re: ошибка mysql

RMC, а обсудить с админами вопрос апгрейда софта нельзя?
можно даже им помочь smile

Если не получится, то вариант всё-равно есть - можно взять версию и специально подкрутить под твою версию софта. Но вносить эти подкрутки в основной код мне очень не хочется, так что это будет патч специально под тебя и с новыми версиями получится так же проблема.

Вне форума

#22 2009-09-30 22:50:52

RMC
Участник
Здесь с 2009-07-01
Сообщений: 151
Рейтинг :   
Сайт

Re: ошибка mysql

vitaly, спасибо за помощь..
скину админу ссылку на топ, посмотрим что скажет
(просто вряд-ли согласится - там же базы и для самого сайта, и для нек-х других факультетов (с этого все и началось wink, у физ-мата есть, а у нас - нет, надо сделать big_smile) а насколько чреват переезд, гм..)
но буду надеятся, что получится..

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

Вне форума

#23 2009-09-30 23:03:40

Amarelius
Модератор
Откуда: Kiev
Здесь с 2008-10-24
Сообщений: 639
Рейтинг :   69 
Сайт

Re: ошибка mysql

vitaly, вопрос наверно снят, такая конструкция встречается только в плагине календарь и только один раз


Всегда ищу разработчиков в Киеве!
Ищешь работу программистом, пиши мне на ArnitUA@gmail.com

Вне форума

#24 2009-09-30 23:05:06

vitaly
Администратор
Откуда: Россия
Здесь с 2008-10-08
Сообщений: 2,788
Рейтинг :   115 

Re: ошибка mysql

Насколько я знаю, апгрейд на новую версию mySQL админам ничем не грозит, обратная совместимость по функциям там полная. Вопрос только в том - готовы ли они потратить на этот апгрейд своё время и нет ли какого-то политического решения, запрещающего любые обновления (в универе такое вполне можно ожидать - к примеру, какой-нить странный приказ от ректора вполне может иметь место).

Насколько сложен - не знаю. Надо будет поставить вашу версию PHP/mysql и править возникающие ошибки пока не заработает. У меня есть огромное подозрение, что проблема возникнет не только с mysql, но и надо будет искать альтернативу некоторым новым функциям PHP (с этим, в принципе, проболем нет - почти для всех на php.net есть варианты решения проблемы).

Вне форума

#25 2009-10-06 23:56:13

RMC
Участник
Здесь с 2009-07-01
Сообщений: 151
Рейтинг :   
Сайт

Re: ошибка mysql

Amarelius, нашел еще одну конструкцию в плагине ГуглМап..
правда там вместо day - date. Вроде как не критично, заменил на dayofmonth - вроде работает..

еще раз спасибо за помощь и советы

Вне форума

Сейчас в этой теме пользователей: 0, гостей: 1
[Bot] ClaudeBot

Подвал форума

Под управлением FluxBB 1.5.11
Модифицировал Visman

[ Сгенерировано за 0.022 сек, 7 запросов выполнено - Использовано памяти: 628.37 Кбайт (Пик: 677.37 Кбайт) ]