Вы не зашли.
Постепенно продвигаются ![]()
Box, будет.
Сделать спойлер рядом с картинкой - можно, но сложно - нужно блочную вёрстку, прописывать у картинки и у блока спойлера ширину и CSS-стиль "float: left;".
В любом случае, это задача для HTML/CSS, а не для движка.
Ой, опечатка. Сорри.
Надо было удалить строку:
zzMail($values['email'], $lang['letter_title'], sprintf($lang['letter_text'], home, home).sprintf($lang['your_info'], $values['login'], $values['password']), 'html');Уговорили, сделаю кнопочки ББ кодов и доведу форум до ума (персональные сообщения, аттачи файлов,...)
Файл engine/plugins/auth_basic/auth_basic.php, код начиная со строки 187:
if ($config['register_type'] == "3") {
$mysql->query("INSERT INTO ".uprefix."_users (name, pass, mail, status, reg, last) VALUES (".db_squote($values['login']).", ".db_squote(EncodePassword($values['password'])).", ".db_squote($values['email']).", '4', '".$add_time."', '')");
zzMail($values['email'], $lang['letter_title'], sprintf($lang['letter_text'], home, home).sprintf($lang['your_info'], $values['login'], $values['password']), 'html');
msg(array("text" => $lang['msgo_registered']));
//print var_dump($lang);
}Удаляешь оттуда строку:
msg(array("text" => $lang['msgo_registered']));Ну... тогда могу посоветовать только 2 варианта на выбор:
1. Ставить другой сервер. Возможно - denwer
2. Выкладывать сайт на коммерческий хостинг
И там и там должно работать без проблем.
Причин неработоспособности на твоём сервере представить не могу.
oktano, частично согласен ![]()
Мой вариант действительно не работал, т.к. он решал только часть задачи основная замена пробелов на подчерки происходит в другом месте.
Твой вариант будет адекватно работать.
Подобная ошибка SQL может означать только повреждение структуры SQL.
Если есть возможность - переустанови систему.
Если не поможет и сайт у тебя выложен где-то на хостинге - давай доступ (моя ICQ: 145368811), посмотрю в чём дело.
Ничего кроме повреждения БД другого в голову не приходит.
1. Какой у тебя префикс БД?
2. Какая точно версия движка установлена (на основной странице админки указана сверху справа)?
bestxp, немного теряешь в гибкости.
Если понадобится добавить второе подключение к соверешнно другой БД, то в твоём решении потребуется не только переделать класс DB, но и везде переписать вызов функции getInstance()
В моём варианте достаточно будет в момент инициализации классу просто дать другой конфигуратор (или ссылку на другой объект класса DB).
Озвученный тобой механизм очень полезен в случае, когда класс действительно может быть только один.
К примеру, класс парсинга bb-кодов.
А вот подключений к БД может быть несколько, в будущем какой-то плагин (ведь у тебя и плагины когда-нибудь появятся?) может захотеть делать второе подключение к БД,... и будет жестко обломан архитектурными ограничениями.
Wolverine, понял. Ты скачивал полную версию (с интегрированным FixPack'ом) а не отдельный FixPack?
Ясно, значит ошибка (файл не из той версии) была только в отдельном FixPack'е.
Меняем генерацию alt_name при добавлении новости (engine/addnews.php) :
строку 51:
$alt_name = preg_replace(array('/\./', '/(_{2,20})/', '/^(_+)/', '/(_+)$/'), array('_', '_'), $alt_name);меняеем на:
$alt_name = preg_replace(array('/\./', '/(_{2,20})/', '/^(_+)/', '/(_+)$/'), array('-', '-'), $alt_name);По уже созданным новостям alt_name надо менять ручками.
Wolverine, как же ты проверял-то? ![]()
В FixPack #04 была одна принеприятнейшая ошибка... выложил исправленную версию.
Всем кто скачал FixPack #04 просьба скачать и установить его ещё раз.
В архиве был файл с ошибкой.
prorock, сейчас это можно сделать только в виде небольшого патча к движку.
К концу года планирую эту функцию вынести в сам двиг.
Как, дождёшься или патч сделать?
Wolverine, проверь, plz.
Я у себя проверил, но для полной уверенности мне требуется отчёты ещё как минимум от 2х админов. Для уверенности, что не осталось "подводных камней".
Выложен FixPack #04 в начале топика.
Последняя доступная версия была 0.9.0 FixPack #03 (от 17.11.2008).
bestxp, а что в моих-то предложениях тебе не понравилось?
Два совершенно адекватных варианта предложил.
На самом деле их должно быть и побольше, просто сразу в голову ничего другого не пришло.
Есть несколько способов:
1. Кросс-обращения через глобальные переменные (очень плохо, но использовать можно).
2. Использование отдельного конфигурационного объекта, через который и будут общаться все твои объекты. Вполне жизнеспособный вариант, в некоторых случаях - самый подходящий способ. Причём возможны вариации - класс может использовать не только как обычный конфигуратор, но и как ядро системы, а остальные классы (db, user) могут выступать в качестве "навеса" (расширения функционала).
class configurator {
function setDbConnect($dbConnect) { $this->dbConnect = $dbConnect; }
function setUserConnect($userConnect) { $this->userConnect = $userConnect; }
function getDbConnect() { return $this->dbConnect; }
function getUserConnect() { return $this->userConnect; }
}
class user {
function user($config) { $this->configLink = $config; }
function new_user($params) {
$db = $this->config->getDbConnect();
$db->select(...);
}
}
$config = new configurator();
$user = new user($config);
$db = new db($config);3. Самый простой, но оптимальный для несложных задач - в конструктор класса user передавать ссылку на объект класса db:
class user {
function user($dbConnect) {
$this->dbConnect = $dbConnect;
}
function newUser($params) {
// обращение к классу работы с БД
$this->dbConnect->select(....);
}
}4. ... другие варианты ... ![]()
Спасибо.
Действительно, проблема есть ![]()
Защиту в других местах сделал, а тут - нет.
Выложу сегодня патч.
Есть некоторые наработки.
В частности - достаточно детально описаны возможности плагинной системы.
Если кому-то нужно - могу выложить их.
Но готового полноценного хелпа в варианте "из коробки" пока, к сожалению, нет.
infinity237, уточни что именно ты хочешь. Что-то вроде "сообщить модератору"?
Плагин рассчитан на работу с любыми объектами, которые можно идентифицировать по типу объекта и по уникальному идентификатору конкретного объекта внутри типа (идентификатор должен иметь тип int(11)).
Комментарии под такое определение подходят - у них есть свой уникальный идентификатор. Значит можно прикрутить.
p.s. Естественно, "сходу" запустить не получится - нужно же ещё отработать отображение информационного блока с "сообщить о проблеме", а в списке активных проблем - "вытаскивать" данные по конкретному комментарию. Но это просто минимальная кастумизация.
bestxp, если не получится развить - сможешь выдрать для своих целей то, что у меня получится.
Возможно я всю логику работы с rewrite'ами вынесу в отдельную библиотеку, чтобы любой желающий смог использовать её в своих проектах отдельно от движка.
Ну а если что-то интересное получится у тебя - поделись ![]()
Ты уточни что тебе надо? "Порезать" на составляющие текст, который разделен символами "-" или "/"?
Или что-то другое?
В первом случае достаточно сделать:
$resultingArray = preg_split('/[\-\|]/', $textToSplit);