[Help] SQL-запрос на добавление темы/сообщения

Тема в разделе "vBulletin", создана пользователем Горбушка, 11 окт 2013.

  1. Горбушка

    Горбушка Ищу её...

    Регистр.:
    2 май 2008
    Сообщения:
    3.036
    Симпатии:
    2.038
    Доброго всем.

    Собственно, имеется довольно увесистый пакет текстовых файлов, которые надо залить в булку. К некоторым идут картинки и архивы.
    Сам скрипт, который это будет делать есть, но он под другой форум писался. Переписать могу сам.

    Короче, нужен пример запроса SQL на добавление темы и сообщения с вложением.

    vBulletin Version 4.2.1

    Заранее спасибо.

    P.s. поставить и вычислить самим не предлагать, вопрос к разбирающимся.
     
  2. BACZ

    BACZ

    Регистр.:
    18 июн 2008
    Сообщения:
    608
    Симпатии:
    381
    Там всё довольно мерзко - аттачи в одной таблице, сами сообщения в другой, а их типа индекса - третья. Поэтому по факту там могут быть сообщения которых не показывает поиск по форуму, потому что их нет в третьей таблице. Добавлять не приходилось - приходилось выгребать из огромного дампа вбулки эти самые сообщения и аттачи самопальным поиском.
    CREATE TABLE `antibb_attachment` (
    `attachmentid` int(10) unsigned NOT NULL AUTO_INCREMENT,
    `userid` int(10) unsigned NOT NULL DEFAULT '0',
    `dateline` int(10) unsigned NOT NULL DEFAULT '0',
    `thumbnail_dateline` int(10) unsigned NOT NULL DEFAULT '0',
    `filename` varchar(100) NOT NULL DEFAULT '',
    `filedata` mediumtext NOT NULL,
    `visible` smallint(5) unsigned NOT NULL DEFAULT '0',
    `counter` smallint(5) unsigned NOT NULL DEFAULT '0',
    `filesize` int(10) unsigned NOT NULL DEFAULT '0',
    `postid` int(10) unsigned NOT NULL DEFAULT '0',
    `filehash` varchar(32) NOT NULL DEFAULT '',
    `posthash` varchar(32) NOT NULL DEFAULT '',
    `thumbnail` mediumtext NOT NULL,
    `thumbnail_filesize` int(10) unsigned NOT NULL DEFAULT '0',
    `importattachmentid` bigint(20) NOT NULL DEFAULT '0',
    `description` varchar(150) NOT NULL DEFAULT '',
    PRIMARY KEY (`attachmentid`),
    KEY `filesize` (`filesize`),
    KEY `filehash` (`filehash`),
    KEY `userid` (`userid`),
    KEY `posthash` (`posthash`,`userid`),
    KEY `postid` (`postid`)
    ) ENGINE=MyISAM AUTO_INCREMENT=1639 DEFAULT CHARSET=cp1251;

    CREATE TABLE `antibb_post` (
    `postid` int(10) unsigned NOT NULL AUTO_INCREMENT,
    `threadid` int(10) unsigned NOT NULL DEFAULT '0',
    `parentid` int(10) unsigned NOT NULL DEFAULT '0',
    `username` varchar(50) NOT NULL DEFAULT '',
    `userid` int(10) unsigned NOT NULL DEFAULT '0',
    `title` varchar(250) NOT NULL DEFAULT '',
    `dateline` int(10) unsigned NOT NULL DEFAULT '0',
    `pagetext` mediumtext NOT NULL,
    `allowsmilie` smallint(6) NOT NULL DEFAULT '0',
    `showsignature` smallint(6) NOT NULL DEFAULT '0',
    `ipaddress` varchar(15) NOT NULL DEFAULT '',
    `proxyip` varchar(50) NOT NULL DEFAULT '',
    `iconid` smallint(5) unsigned NOT NULL DEFAULT '0',
    `visible` smallint(6) NOT NULL DEFAULT '0',
    `attach` smallint(5) unsigned NOT NULL DEFAULT '0',
    `importthreadid` bigint(20) NOT NULL DEFAULT '0',
    `importpostid` bigint(20) NOT NULL DEFAULT '0',
    PRIMARY KEY (`postid`),
    KEY `iconid` (`iconid`),
    KEY `userid` (`userid`),
    KEY `threadid` (`threadid`,`userid`)
    ) ENGINE=MyISAM AUTO_INCREMENT=2210477 DEFAULT CHARSET=cp1251;

    CREATE TABLE `antibb_postindex` (
    `wordid` int(10) unsigned NOT NULL DEFAULT '0',
    `postid` int(10) unsigned NOT NULL DEFAULT '0',
    `intitle` smallint(5) unsigned NOT NULL DEFAULT '0',
    `score` smallint(5) unsigned NOT NULL DEFAULT '0',
    UNIQUE KEY `wordid` (`wordid`,`postid`)
    ) ENGINE=MyISAM DEFAULT CHARSET=cp1251;


    И темы ещё, но с ними вроде проще. А много файлов это сколько? Может быть проще через fsockopen авторизоваться скрипту и на форуме кнопки жать через POST ? И пусть движок сам разбирается что куда добавлять.
     
    Последнее редактирование: 12 окт 2013
    Горбушка нравится это.
  3. esche

    esche

    Регистр.:
    9 авг 2009
    Сообщения:
    360
    Симпатии:
    243
    Горбушка, может API есть смысл использовать?
    http://www.vbulletin.com/docs/html/data_managers
    По времени выполнения может занять чуть больше, чем базу парой запросов конвертировать, но пишется быстрее и меньше шансов что-нибудь упустить (разрешения всякие). Имеет смысл проверить на 2-3 постах (в т.ч. доступность без авторизации топиков, файлов и прочего)
    Примеры вроде такого http://www.littlehart.net/atthekeyb...o-create-a-thread-in-vbulletin-with-a-script/
    Хотя, если есть желание разобраться досконально - изучать структуру таблиц.
     
    Горбушка нравится это.
  4. Горбушка

    Горбушка Ищу её...

    Регистр.:
    2 май 2008
    Сообщения:
    3.036
    Симпатии:
    2.038
    Файлов... Мммм.... Да несколько тысяч...
    Думал над этим, но как-то лень сейчас читать на инглише стопку литературы по этому API...
    Нулевое желание =)