ХрюнделЪ
+43
Репутация
2
Рейтинг
докинул 5к
ёптить… я думал файл добавился😥
сейчас отредактирую первый пост.
З.Ы. добавил код впервый пост.
сейчас отредактирую первый пост.
З.Ы. добавил код впервый пост.
Anor, хех возможно поэтому такая реакция :)
з.ы. честно не знал о его попытках, просто была нужда в этом мы и реализовали для себя… из благих намерений поделился…
з.ы. честно не знал о его попытках, просто была нужда в этом мы и реализовали для себя… из благих намерений поделился…
r2, хм, здесь слишком просто, чтобы живость показывать, вот как выше написали если сделать автоматическую интеграцию с конкретными движками, тогда можно и площадку тестовую выкладывать…
А так это простой скрипт, который служит прослойкой между двумя сайтами один из которых инстант.
Если в дальнейшем расширен будет функционал, тогда выставлю площадку тестовую. Просто нам с другими движками именно конкретными нет нужды делать интеграцию…
Пусть народ напишет пожелания более детально, будем реализовывать на благо сообщества.
А так это простой скрипт, который служит прослойкой между двумя сайтами один из которых инстант.
Если в дальнейшем расширен будет функционал, тогда выставлю площадку тестовую. Просто нам с другими движками именно конкретными нет нужды делать интеграцию…
Пусть народ напишет пожелания более детально, будем реализовывать на благо сообщества.
ХрюнделЪ, крут, крут
да куда там… как выше написали "куцый" скрипт.
Вот если бы с phpBB3 кто осилил наконец полноценную дружбу, я бы на радости такой на ящик пива раскошелился ))
А подобные куцые наработки не особо интересны...
Опишите пожалуйста более детально, рассмотрим и постараемся выделить свободное время на реализацию.
Что именно нужно, как и т.д. т.п.
ХрюнделЪ, не обращайте внимания, это у него ревность!!!
спасибо за поддержку.
При переходе с одного сайта на другой заново нужно входить в систему?Если желаете развития идеи, то пишите свои пожелания, будем реализовывать.
Этот скрипт просто облегчает автоматическую регистрацию (добавление новых) пользователей одновременно на нужном сайте на базе instantcms.
Единую сессию и т.д. т.п не реализовывали.
А суть данного поста? прочитал раз 5 могу сказать только что я РАД за вас и за ваш МОСТ.
Моё дело поделиться наработкой, а всем уже решать нужна она им или нет.
Написал в один из коллективных блогов, но видать там администратор будет долго еще проверять пост, решил сюда запостить.
Мне на своем проекте понадобилась одновременная регистрация пользователей на суб-проектах и на основном сайте.
структура в целом проекта такая:
site.ru — основной сайт на инстанте
subproect1.site.ru — субпроект №1
subproect2.site.ru — субпроект №2
subproect3.site.ru — субпроект №3
subproect4.site.ru — субпроект №4
При регистрации пользователей на любом из сайтов субпроекта, автоматически создается пользователь в InstantCMS на основном сайте site.ru
Для этого написан был универсальный мост.
Мост представляет из себя всего 1 файл bridge.php, который кладется в корень сайта с instantCMS и позволяет регистрировать пользователей любым сторонним скриптом.
Для этого нужно сделать POST запрос по адресу моста (site.ru/bridge.php). POST-запрос состоит всего из одного поля "regdata", в который должен быть упакован массив с информаций о регистрации, следующим способом:
base64_encode(serialize($data));
Где $data — это массив в формате:
array(
'login' => $login,
'pass' => $pass,
'email' => $email,
'sign' => $sign
);
$sign — это строка с секретным словом, своего рода подпись. Используется для защиты моста от злоумышленников.
Точно такое же значение следует присвоить переменной $sign в файле bridge.php
Значения остальных полей очевидны.
Скрипт моста может выдавать следующие ответы:
error1 — отсутствует $_POST['regdata'] в запросе,
error2 — распакованное содержимое $_POST['regdata'] не является массивом,
error3 — не совпадает секретное слово,
loginIsBusy — пользователь с таким логином уже существует,
error4 — ошибка при занесении пользователя в базу данных,
ok — регистрация прошла успешно.
код файла bridge.php :
Совместной регистрации не делали, также как автоматическая регистрация с конкретными движками. У нас на субпроектах просто сайты не на распространенных движках, поэтому не ставилось такой задачи.
Если желаете развития идеи, то пишите свои пожелания, будем реализовывать.
Мне на своем проекте понадобилась одновременная регистрация пользователей на суб-проектах и на основном сайте.
структура в целом проекта такая:
site.ru — основной сайт на инстанте
subproect1.site.ru — субпроект №1
subproect2.site.ru — субпроект №2
subproect3.site.ru — субпроект №3
subproect4.site.ru — субпроект №4
При регистрации пользователей на любом из сайтов субпроекта, автоматически создается пользователь в InstantCMS на основном сайте site.ru
Для этого написан был универсальный мост.
Мост представляет из себя всего 1 файл bridge.php, который кладется в корень сайта с instantCMS и позволяет регистрировать пользователей любым сторонним скриптом.
Для этого нужно сделать POST запрос по адресу моста (site.ru/bridge.php). POST-запрос состоит всего из одного поля "regdata", в который должен быть упакован массив с информаций о регистрации, следующим способом:
base64_encode(serialize($data));
Где $data — это массив в формате:
array(
'login' => $login,
'pass' => $pass,
'email' => $email,
'sign' => $sign
);
$sign — это строка с секретным словом, своего рода подпись. Используется для защиты моста от злоумышленников.
Точно такое же значение следует присвоить переменной $sign в файле bridge.php
Значения остальных полей очевидны.
Скрипт моста может выдавать следующие ответы:
error1 — отсутствует $_POST['regdata'] в запросе,
error2 — распакованное содержимое $_POST['regdata'] не является массивом,
error3 — не совпадает секретное слово,
loginIsBusy — пользователь с таким логином уже существует,
error4 — ошибка при занесении пользователя в базу данных,
ok — регистрация прошла успешно.
код файла bridge.php :
<?php $sign = 'secret<#45t@ddSSdfaj5+q-_pass'; // Секретное слово include(PATH.'/core/cms.php'); $inCore = cmsCore::getInstance(); $inDB = cmsDatabase::getInstance(); $inCore->loadClass('user'); $inCore->loadClass('actions'); $login = $data['login']; $nickname = $data['login']; $email = $data['email']; $icq = ''; $birthdate = '1980-01-01'; $sql = "SELECT id, login FROM cms_users WHERE login LIKE '$login' AND (is_deleted = 0)"; $result = $inDB->query($sql) ; $sql = "INSERT INTO cms_users (group_id, login, nickname, password, email, icq, regdate, logdate, birthdate, is_locked, is_logged_once, invited_by) VALUES ('1', '$login', '$nickname', '$pass', '$email', '$icq', NOW(), NOW(), '$birthdate', '0', 0, '0')"; $inDB->query($sql) ; $new_user_id = dbLastId('cms_users'); //create advanced user profile if ($new_user_id){ $sql = "INSERT INTO cms_user_profiles (user_id, city, description, showmail, showbirth, showicq, karma, imageurl, allow_who) VALUES (".$new_user_id.", '', '', '0', '0', '1', '0', '', 'all')"; $inDB->query($sql) ; $user_array['id'] = $new_user_id; } else{ } // Регистрируем событие 'object' => '', 'user_id' => $new_user_id, 'object_url' => '', 'object_id' => $new_user_id, 'target' => '', 'target_url' => '', 'target_id' => 0, 'description' => '' )); ?>
Если желаете развития идеи, то пишите свои пожелания, будем реализовывать.
кто-то взялся за работу?
можно на отдельном ресурсе поднять такой каталог
Если люди не наполняют каталог здесь, то почему вы думаете что они начнут делать это на стороннем сайте?
Всё довольно просто, им не нужно наполнять самим, а только отправить архив + описание, можно и здесь наполнить, я просто предложил альтернативный вариант ;)
на край можно на отдельном ресурсе поднять такой каталог, готов предоставить место и загрузить всё в единую базу при условии, что разработчики дополнений и компонентов будут присылать их архивы с описанием.