Если ты хороший мальчик, то не суй в розетку пальчик, с проводами не играй! Неизвестно, есть ли рай.
Добрый день.

Я буду очень благодарна за помощь... Ставила второй по счету мод для форума phpBB (версия 2.0.23) - и все бы ничего, но этот конкретный мод не работает, и совершенно точно я где-то лажанулась :( (название мода - Custom Profile Fields)

Как и написано в инструкции по установке мода, сначала выполнила запросы к SQL (через интерфейс phpmyadmin):

запрос 1

запрос 2

Потом последовательно меняла php-файлы, как и написано в инструкциях.
В админке все отобразилось путем (если не считать моего кривого перевода этого мода, русификацию которого я не нашла)))), но при попытке создать через админку новое поле в профиле пользователя, вылезают ошибки:

ошибка 1

При редактировании содержания поля (которое в админке таки создается, отображается и даже никуда не теряет свои данные) -

ошибка 2

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

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

И если тут все-таки ничего не понятно и ничего нельзя поделать, то как мне отменить действие второго запроса к SQL (первый - создание таблицы - таблицу же и руками удалить спокойно можно, как я понимаю; она создалась, я ее видела :))

ЗЫ. Я не профессионал. Я обычный админ сайта, которому надо чуть прокачать форум, и несложные моды без обращения к базе я ставила без проблем.

***
upd. Все заработало - благодаря совету Раль заменить доморощенную русификацию инфы для админки на оригинальную версию. Большущее спасибо этому человеку и всем, кто тоже помогал :)

***
upd2. Впрочем,опять вылезла какая-то кривизна. Система не "хочет" менять однословное англоязычное значение поля на двухсловное русскоязычное. Копаю дальше.... :(((

***
upd3. Благодаря помощи в комментах lynx i.i. теперь все нормально и с русским, и хотя система отказывается давать полю название более чем из двух слов включительно, это уже фигня - и двумя обойдемся :) Уррраааа! Спасибо!!! :vict:

@темы: MySQL, PHP

Комментарии
13.07.2008 в 12:41

Даже среди сильной бури есть маленькая полоска света!
ALTER TABLE phpbb_users CHANGE Сейчас_работаю_над_ Сейчас_работаю_над_ VARCHAR(100)

выделенный текст заменить исходным англоязычным.

UPDATE phpbb_users SE WHERE user_id = 2

Не хватает присвоения. синтаксис update - update table set key='value' where user_id=2
тоже заменить из исходного файла.
13.07.2008 в 13:06

Если ты хороший мальчик, то не суй в розетку пальчик, с проводами не играй! Неизвестно, есть ли рай.
lynx i.i. уже пробовала менять на англ - и даже на 1 слово, а то вдруг там все портят пробелы - картина не изменилась :( Это тот текст, который вводится в окошке в админке и который потом будет отображаться в профилях всех. Пока я рылась по форумам в поисках какого-то решения, неоднократно натыкалась на то, что кто-то ставил этот мод и все чудесно писал по-русски.

Не хватает присвоения. синтаксис update - update table set key='value' where user_id=2 тоже заменить из исходного файла.

а где именно заменить? в usercp_register.php или каком-то другом файле? И где находится исходный файл (где его искать)?

прошу прощения за столько вопросов - просто я на самом деле не понимаю. И огромное спасибо за подсказки!
13.07.2008 в 13:24

Даже среди сильной бури есть маленькая полоска света!
admin_profile_fields.php

$sql = "ALTER TABLE " . USERS_TABLE . "
CHANGE $old_name $name $col_type";

заменить на
$sql = "ALTER TABLE " . USERS_TABLE . "
CHANGE `$old_name` `$name` $col_type";

----------
$sql = "UPDATE " . USERS_TABLE . "
SET $name = %s
WHERE user_id = $user_id";

заменить на

$sql = "UPDATE " . USERS_TABLE . "
SET `$name` = %s
WHERE user_id = $user_id";
13.07.2008 в 13:26

Если ты хороший мальчик, то не суй в розетку пальчик, с проводами не играй! Неизвестно, есть ли рай.
lynx i.i., большое спасибо!

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

Так что мод заработал, все ок))
13.07.2008 в 13:36

Если ты хороший мальчик, то не суй в розетку пальчик, с проводами не играй! Неизвестно, есть ли рай.
lynx i.i. сейчас попробую, потому что система нормальн распознает английское заполнение полей в кол-ве нескольких штук слов, а с русскими то же не прокатывает. Мне же до зарезу надо русское, наши не поймут =//
13.07.2008 в 13:48

Если ты хороший мальчик, то не суй в розетку пальчик, с проводами не играй! Неизвестно, есть ли рай.
Сводка с поля боя: теперь несколькословные сочетания с пробелами распознает нормально, но начинает кочевряжиться, если в одном из полей (собственно название поля) задать более двух слов. Но это в принципе не страшно, мне двух как раз хватает.

Спасибище!!! :vict:

Расширенная форма

Редактировать

Подписаться на новые комментарии
Получать уведомления о новых комментариях на E-mail