izbushkin 3 Опубликовано: 2 апреля 2013 Рассказать Опубликовано: 2 апреля 2013 Здравствуйте форумчане! Вопрос такой: define ("USERPREFIX", "dle"); в /engine/data как изменить префикс dle на другой и безболезненно? (Сайт http://www.izbushkinet.ru/) Цитата Ссылка на сообщение Поделиться на других сайтах
Klemanso 15 Опубликовано: 2 апреля 2013 Рассказать Опубликовано: 2 апреля 2013 смысл?! охота переписать весь движок? Цитата Ссылка на сообщение Поделиться на других сайтах
izbushkin 3 Опубликовано: 2 апреля 2013 Рассказать Опубликовано: 2 апреля 2013 Автор смысл?! охота переписать весь движок? Читаем тут: http://dle-news.ru/tips/152-edinaja_registracija_i_avtorizacija_na_neskolkikh_sajjtakh.html Цитата Ссылка на сообщение Поделиться на других сайтах
Klemanso 15 Опубликовано: 2 апреля 2013 Рассказать Опубликовано: 2 апреля 2013 там про 5.7 с тех пор разве ничего не изменилось? Цитата Ссылка на сообщение Поделиться на других сайтах
izbushkin 3 Опубликовано: 2 апреля 2013 Рассказать Опубликовано: 2 апреля 2013 Автор там про 5.7 с тех пор разве ничего не изменилось? Нет. Не изменилось! Цитата Ссылка на сообщение Поделиться на других сайтах
Klemanso 15 Опубликовано: 2 апреля 2013 Рассказать Опубликовано: 2 апреля 2013 (изменено) ну а тогда можно или ручками - 36 таблиц минимум или новой установкой - но с нужным префиксом или изменить файл архива name.sql.txt - методом замены префиксов и создать новую базу способов много... Изменено 2 апреля 2013 пользователем Klemanso Цитата Ссылка на сообщение Поделиться на других сайтах
izbushkin 3 Опубликовано: 2 апреля 2013 Рассказать Опубликовано: 2 апреля 2013 Автор Нашел вроде бы вариант http://www.pro-script.ru/index.php?name=news&op=view&id=256 Думаю рискнуть или нет Цитата Ссылка на сообщение Поделиться на других сайтах
Klemanso 15 Опубликовано: 2 апреля 2013 Рассказать Опубликовано: 2 апреля 2013 пока не рискнешь - не узнаешь, стоило оно того или нет Цитата Ссылка на сообщение Поделиться на других сайтах
izbushkin 3 Опубликовано: 2 апреля 2013 Рассказать Опубликовано: 2 апреля 2013 Автор Счас на кошках потренеруюсь для начала Цитата Ссылка на сообщение Поделиться на других сайтах
Klemanso 15 Опубликовано: 2 апреля 2013 Рассказать Опубликовано: 2 апреля 2013 давай... потом шкурками поделишься Цитата Ссылка на сообщение Поделиться на других сайтах
izbushkin 3 Опубликовано: 2 апреля 2013 Рассказать Опубликовано: 2 апреля 2013 Автор Не получается. Пишет: (!!!) Empty database. (!!!) Пустая база данных.Вот собственно весь скрипт: <?php /** * Скрипт автоматической замены префикса таблиц базы данных. * * @author Владислав Dr.Freddy Костянецкий <bytecoded@gmail.com> * @version 1.0.0 от 18 июля 2009 г. * @link http://drfreddy.ru/2011/7/24/prefix */ // Конфигурация скрипта. define( 'CURRENT_PREFIX', 'one_' ); // Текущий префикс таблиц. define( 'REPLACE_PREFIX', 'two_' ); // Требуемый префикс таблиц. define( 'MYSQL_HOST', 'localhost' ); // Сервер СУБД. define( 'MYSQL_CHAR', 'utf8' ); // Кодировка соединения. define( 'MYSQL_PORT', '3306' ); // Порт подключения. define( 'MYSQL_USER', '' ); // Имя пользователя. define( 'MYSQL_PASS', '' ); // Пароль пользователя. define( 'MYSQL_BASE', '' ); // Целевая база данных. // НИЖЕ НИЧЕГО МЕНЯТЬ НЕ НУЖНО!!! print "<pre>Let's the mortal combat begin!nn"; $tables = array(); $connection_id = @ mysql_connect( MYSQL_HOST . ':' . MYSQL_PORT, MYSQL_USER, MYSQL_PASS ); if ( ! $connection_id ) die( '(!!!) MySQL connection failed.' ); if ( ! mysql_select_db( MYSQL_BASE, $connection_id ) ) die( '(!!!) Database selection failed.' ); mysql_query( 'SET NAMES ' . MYSQL_CHAR, $connection_id ); $tables_rid = mysql_query( 'SHOW TABLES FROM ' . MYSQL_BASE, $connection_id ); while ( $row = mysql_fetch_row( $tables_rid ) ) $tables[] = $row[0]; if ( ! count( $tables ) ) die( '(!!!) Empty database.' ); foreach( $tables as $table ) { if ( substr( $table, 0, strlen( CURRENT_PREFIX ) ) != CURRENT_PREFIX ) continue; print " Table: $tablen"; $new_name = substr_replace( $table, REPLACE_PREFIX, 0, strlen( CURRENT_PREFIX ) ); mysql_query( "ALTER TABLE `$table` RENAME `$new_name`;", $connection_id ); print ' Renamed to ' . $new_name . "n"; } exit( "nnTHE END" ); Цитата Ссылка на сообщение Поделиться на других сайтах
ibred 31 Опубликовано: 2 апреля 2013 Рассказать Опубликовано: 2 апреля 2013 Если база небольшая, то можно сделать след. образом: 1. Скачать дамп базы; 2. Открыть любым текстовым редактором, но лучше Notepad++ или AkelPad; 3. Перейти в функцию "Найти и заменить": dle_ на ***_ (что-то свое); 4. Заливаем БД и меняем в /date/config.php префикс на тот, что установили ранее. Цитата Ссылка на сообщение Поделиться на других сайтах
Klemanso 15 Опубликовано: 2 апреля 2013 Рассказать Опубликовано: 2 апреля 2013 ну правильно пишет... данные то небось читаются по старой конфигурации, а новую надо еще настраивать Цитата Ссылка на сообщение Поделиться на других сайтах
izbushkin 3 Опубликовано: 2 апреля 2013 Рассказать Опубликовано: 2 апреля 2013 Автор ну правильно пишет... данные то небось читаются по старой конфигурации, а новую надо еще настраивать Ты о чем вообще? Цитата Ссылка на сообщение Поделиться на других сайтах
izbushkin 3 Опубликовано: 2 апреля 2013 Рассказать Опубликовано: 2 апреля 2013 (изменено) Автор Ребята, тогда следующий вопрос. Есть два сайта. У каждого соответственно своя база данных. Хочу создать общую базу данных пользователей. Как сделать так, чтобы авторизованные на первом сайте автоматически становились также авторизованы на сайте втором? И есть ли возможность синхронизации данных между двумя базами пользователей? Изменено 2 апреля 2013 пользователем izbushkin Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 072 Опубликовано: 3 апреля 2013 Рассказать Опубликовано: 3 апреля 2013 Как сделать так, чтобы авторизованные на первом сайте автоматически становились также авторизованы на сайте втором? Как это сделать написано на странице http://dle-news.ru/tips/152-edinaja_registracija_i_avtorizacija_na_neskolkikh_sajjtakh.html но второй сайт должен быть сделан с нуля. И есть ли возможность синхронизации данных между двумя базами пользователей? Нет, пользователи беруться только из одной БД, а не из двух одновременно. Цитата Ссылка на сообщение Поделиться на других сайтах
izbushkin 3 Опубликовано: 4 апреля 2013 Рассказать Опубликовано: 4 апреля 2013 Автор Как сделать так, чтобы авторизованные на первом сайте автоматически становились также авторизованы на сайте втором? Как это сделать написано на странице http://dle-news.ru/t...h_sajjtakh.html но второй сайт должен быть сделан с нуля. И есть ли возможность синхронизации данных между двумя базами пользователей? Нет, пользователи беруться только из одной БД, а не из двух одновременно. Спасибо за комментарий! А подскажите тогда как мне всё же изменить префикс "dle" на старом сайте? Есть ли какой то способ? Цитата Ссылка на сообщение Поделиться на других сайтах
celsoft 6 072 Опубликовано: 4 апреля 2013 Рассказать Опубликовано: 4 апреля 2013 izbushkin, Выше писали, сначала нужно сделать бекап БД, поменять префикс таблиц в бекапе, восстановить бекап БД и потом в файле engine/data/dbconfig.php сменить. Цитата Ссылка на сообщение Поделиться на других сайтах
izbushkin 3 Опубликовано: 4 апреля 2013 Рассказать Опубликовано: 4 апреля 2013 Автор Всё ясно. Думал, что есть какой то другой способ. Спасибо! Цитата Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Присоединяйтесь к обсуждению
Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.