Ошибка при редактировании смайла

Автор Avdenago, 22 ноября 2007, 01:24:57

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

Avdenago

При редактировании смайлов вылазит ошибка

Ошибка базы данных
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 'LENGTH(code) DESC' at line 2
Файл: /home/public_html/forum/Sources/ManageSmileys.php
Строка: 654

Собственно ругается на синтаксис. У меня MySQL 5+.

Как поправить?


Avdenago

неа. надо поковырять код да значит выщемить этот запрос...  ок. посмотрим.

Вообще, что-то с смайлами у смф проблема. Который раз ставлю - надо убить чуть ли не два часа, пока все расставишь по местам... нет чтобы архивом за пять минут поставить...

digger®

Цитата: Avdenago от 22 ноября 2007, 01:41:46
неа. надо поковырять код да значит выщемить этот запрос...  ок. посмотрим.
Надо не из кода выщемлять запрос, а именно текущий. Может у тебя смайл с '%' запрос валит или еще чего.
Тема, кстати, поднималась уже неоднократно. Хотелось бы разрулить и в FAQ.

Avdenago

Хм. А как его текущий то выловишь?


Смайлы без различного рода препинаний...  идут стандартные киповские: :ab: :ac:  и так далее. С аналогичным кодом.

Glen

Если кому надо будет, решение есть на офф сайте
_http://docs.simplemachines.org/index.php?topic=1079

Надо заменить в /Sources/ManageSmileys.php
ALTER TABLE {$db_prefix}smileys
ORDER BY LENGTH(code) DESC;
на ALTER TABLE {$db_prefix}smileys
ORDER BY code DESC;


Строки 654 и 990

hymen

Такс :) товарищ Глен немного неправ.

Что бы сделать все правильно необходимо.

Открыть файл "upgrade_1-1.sql" найти следующий код:

Code:

ALTER TABLE {$db_prefix}smileys
ORDER BY LENGTH(code) DESC;


Заменить этим:

Code:

ALTER TABLE {$db_prefix}smileys
ORDER BY code DESC;


Открываем файл "/Sources/ManageSmileys.php" ищем следующее:
Code:

         // Sort all smiley codes for more accurate parsing (longest code first).
         db_query("
            ALTER TABLE {$db_prefix}smileys
            ORDER BY LENGTH(code) DESC", __FILE__, __LINE__);

Меняем на это:
Code:

         // Sort all smiley codes for more accurate parsing (longest code first).
         db_query("
            ALTER TABLE {$db_prefix}smileys
            ORDER BY code DESC", __FILE__, __LINE__);

Теперь все обновляется :)

waltmeister

Цитата: hymen от 14 февраля 2008, 12:36:35
Такс :) товарищ Глен немного неправ.

Что бы сделать все правильно необходимо.

Открыть файл "upgrade_1-1.sql" найти следующий код:

Code:

ALTER TABLE {$db_prefix}smileys
ORDER BY LENGTH(code) DESC;


Заменить этим:

Code:

ALTER TABLE {$db_prefix}smileys
ORDER BY code DESC;
ребят, а поподробнее нельзя? этот файл в корень загрузить или как? Распишите, пожалуйста

Mavn

этот файл часть скрипта обновления и если ты его просто зальешь в корень форума то ничего не будет его еще и нужно выполнить хотя можно просто в sql манагере типа phpmyadmin выполнить запрос к бд да и все
SimpleMachines Russian Community Team
п.1 Пройду курсы гадалок для определения исходного кода по скриншоту.

п.2 У вас нет желания читать правила раздела, у меня нет желания одобрять темы, которые не соответствуют этим правилам.

waltmeister

Я дико извиняюсь, но расскажите поподробнее, что и как :'( :'( если можно, то пошагово. поиск по форуму ниче не дал((

Miracl

ЦитироватьЯ дико извиняюсь, но расскажите поподробнее, что и как :'( :'( если можно, то пошагово. поиск по форуму ниче не дал((
Заходишь в файлик Sources/ManageSmileys.php и ручками заменяешь.


Ну, а далее нубо вопрос.
Поставил форум 1.1.7 (качал с офа) + руссификацию не утф, поставил новые смайлики, но вот беда, при попытке их заредактить ни чего не выходит, нене я не про жалобу форум, форум всё норм делает, но в предварительном просмотре, вижу старые смайлики, (хотя и сделал новые смайлики по умолчанию)
самое странное описание смайликов(подсказка) осталась старой, хотя я её даже через phpmyadmin менял....
в общем, в форме ответа отображаются старые смайлы.
подскажите в чём может быть трабл...

waltmeister

Цитата: Miracl от 28 декабря 2008, 17:46:54
Заходишь в файлик Sources/ManageSmileys.php и ручками заменяешь.
Это понятно. меня файл "upgrade_1-1.sql" интересует. Ну заменю я в нем строчки, а как его запустить, выполнить?