Legbk 😆

legbk-utf8.7z (163,1 МБ)

  • Поддержка UTF-8.
  • База перекодирована в utf8mb4.
  • Удалён субдомен img., картинки вызываются из /static/img/;
  • Где это возможно изменено жёсткое legbk.net на $_SERVER['HTTP_HOST'], что подтянет ваш хост самостоятельно.
  • http:// заменены на краткое // чтобы соответствовать стандартам;
  • Удалены вагоны, тысячи их ссылок как на всякие клоны так и на combats.com, теперь картинки или тянутся локально или не существуют.
  • Отвязаны всякие счётчики, удалены всякие кассы. Удалёны способ слить базу и способ стать админом без смс и регистрации, настолько глупые, что страшно.
  • Отвязано от вКонтакта.
  • Запускается строго на php54, извините, тут без волшебства.

Каким бы хламом это не было на сегодняшний день, обязательно найдётся жук, который захочет «установить дома и поностальгировать»™️

у меня есть версия которая на php 7.4 просто жалко выкладывать на форум))

Это там где чисто функции MySQL заменены?)
Сейчас конец 25 года, этим кодам лет по 10 минимум, можно что угодно публиковать. Даже php7 успел устареть и потерять поддержку.

ага =) просто создал новые классы ))

Возникла проблема при дампе базы данных

Не удалось восстановить базу данных из резервной копии. Процесс завершился с ошибкой: 'mysql: [Warning] Using a password on the command line interface can be insecure. ERROR 1071 (42000) at line 332638: Specified key was too long; max key length is 1000 bytes sed: couldn’t write 63 items to stdout: Broken pipe ’

посмотрел базу, в базе такие параметры

– Дамп структуры для таблица chat
CREATE TABLE IF NOT EXISTS chat (
id int(10) unsigned NOT NULL AUTO_INCREMENT,
invis tinyint(1) unsigned NOT NULL DEFAULT ‘0’,
dn int(10) unsigned NOT NULL DEFAULT ‘0’,
login varchar(50) NOT NULL DEFAULT ‘’,
to varchar(255) NOT NULL DEFAULT ‘’,
city varchar(30) NOT NULL,
room int(10) NOT NULL,
effect varchar(10) NOT NULL DEFAULT ‘’,
time int(10) NOT NULL DEFAULT ‘0’,
type tinyint(2) NOT NULL DEFAULT ‘0’,
spam tinyint(1) NOT NULL DEFAULT ‘0’,
text varchar(10000) NOT NULL DEFAULT ‘’,
toChat tinyint(2) NOT NULL DEFAULT ‘0’,
color varchar(12) NOT NULL DEFAULT ‘#000000’,
typeTime tinyint(1) NOT NULL DEFAULT ‘0’,
sound smallint(5) NOT NULL DEFAULT ‘0’,
global tinyint(1) NOT NULL DEFAULT ‘0’,
delete int(10) NOT NULL DEFAULT ‘0’,
new tinyint(1) DEFAULT ‘0’,
ip varchar(16) DEFAULT ‘’,
molch tinyint(1) DEFAULT ‘0’,
da tinyint(2) DEFAULT ‘0’,
jalo int(10) DEFAULT ‘0’,
active tinyint(1) DEFAULT ‘0’,
frv varchar(20) DEFAULT NULL,
battle_chat int(10) DEFAULT ‘0’,
nosee int(10) DEFAULT ‘0’,
PRIMARY KEY (id),
KEY id (id),
KEY login (login,to,time,new),
KEY city (city,time,delete,new),
KEY type (type)
) ENGINE=MyISAM AUTO_INCREMENT=277669 DEFAULT CHARSET=utf8mb4 CHECKSUM=1;

прошу подсказать как пофиксить данную проблему

подскажет кто? или может эту базу даст без ошибки.

еще и ошибка 500 при установке

установи движок на нормальный сервер

Дамп куда и на что? Я смог его развернуть даже на mysql-сервер установленный на windows для чистоты эксперимента.


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

login — varchar(50)
to — varchar(255)
time — int(10)
new — tinyint(1)

(50 * 4 = 200 байт) + (255 * 4 = 1020 байт) + time и new по 4 и 1 байту

В сумме 1220 байт, что превышает лимит 1000 байт для ключей в MyISAM. Тут или перейти на InnoDB и потерять транзакции в LOCK TABLES 'name'; START TRANSACTION; (где-то в коде я такое видел), или скатиться с utf8mb4 на utf8, или уменьшить размер поля to, чтобы вписаться в 1000 байт. Последнее напрашивается.


По человечески бы почистить и пересобрать базу, но я не до конца разбираюсь что является данными игроков, а что системными данными необходимыми для работы движка. Тут бы помог кто, а потом с базой не в 50 мегабайт текста, а в 1 мегабайт текста, например, уже можно было бы пробежаться и пофиксить эти досадные неточности, которые так-то надо отлавливать при заливке дампа. Или, может, @server13, если будешь заливать и натыкаться на ошибки, просто напиши где-то их все списком, чтобы в одном месте лежали все сломанные таблицы вылетающие за лимит. Потому что у меня видимо, повышены лимиты и такого нет.

Ну тут точно надо знать куда на какой сервер с какими версиями. :slight_smile:

Ну судя по всему ошибка 500 появляется так как ты менял https:// но теперь глядя на файлы везде идёт короткое не // а ///, с базой пока не работал, посмотрю какие ошибки будут идти когда буду пробовать фиксить, или если есть вариант, то подскажи как увеличить, что бы можно было импортировать базу.

Три косых это видимо я где-то хомутнул. Что с базой делать я же выше написал варианты.

а можно примеров? я сейчас открыл посмотреть и пересобрать и что-то не нашёл, где оно вызывает эту проблему.