1

Тема: Экспорт гостевых постов на форум vBulletin из текстового файла

boris2.ini - настройки подключения к БД форума на булке.
wp.txt - текстовый файл с постами, разделенными тегом "<comment>",
Сначала создаем тему и в $threadid указываем её id.

Сам скриптик:

<?php
echo "<br>подкл к БД2...";
 
$file_ini = file("boris2.ini");
$host="localhost";
$user=trim($file_ini[0]);
$pwd=trim($file_ini[1]);
$database_name=trim($file_ini[2]);

mysql_connect($host,$user,$pwd) or die(mysql_error());
echo "<br>   {$database_name} - {$user} - {$pwd} <br>";
mysql_select_db($database_name,$db);
mysql_query ('SET NAMES cp1251');

$file_ex = file_get_contents('wp.txt');
echo "<br>-------------<br>";
$array = explode("<comment>",$file_ex);

$mytime = date( "U" ) - 2000000; // дней 20 назад

$threadid=650;

//  найдем уменьшим время в нужной теме
$result = mysql_query("UPDATE $database_name.`thread` SET `dateline`='$mytime', `lastpost`='$mytime' WHERE threadid='$threadid'")
or die("Invalid query: " . mysql_error());

$result = mysql_query("UPDATE $database_name.`post` SET `dateline`='$mytime' WHERE threadid='$threadid'")
or die("Invalid query: " . mysql_error());



foreach ( $array as $value ){   // запишем все посты с файла в базу!
$mytime = $mytime  + rand(300, 700);
if (strlen($value)>=10){
$result = mysql_query("
INSERT INTO  $database_name.`post` (`threadid`, `parentid`, `username`, `userid`, `title`,
`dateline`, `pagetext`, `allowsmilie`, `showsignature`, `ipaddress`, `iconid`, `visible`, `attach`, `infraction`, `reportthreadid`)
VALUES
('$threadid', '0', 'Гость', '0', '', '$mytime', '$value', '1', '1', '', '0', '1', '0', '0', '0')")
or die("Invalid query: " . mysql_error());
}
}

mysql_close($db);       
echo "<br>закрыли БД";
                ?>

Поделиться