| Решил перенести свой сайт с ucoz на DLE, скачал скрипт. Конвертируется всё кроме форума, хотя модуль DLE Forum установлен и работает. Конвертирование форума проходит в 3 этапа. Один конвертируется успешно, второй (о нём в начале сообщения) и третий (в конце поста) тоже не работают. А дело вот в чём: при попытке конвертирования (запускаю через ссылку php файл) выдаёт отчёт об конвертировании, в котором Unknown column 'uid' in 'field list'.
Я в прогаммировании ничего не понимаю, но слово uid встречается в строках
$info = "SELECT * FROM {$prefix}_forum_forums WHERE uid = $arr[1]";
и
$query = "INSERT IGNORE INTO {$prefix}_forum_topics (`tid`, `forum_id`, `title`, `topic_descr`, `post`, `author_topic`, `start_date`, `topic_status`, `uid`, `last_date`, `last_poster_name`) VALUES
причём лог конверта ругается именно на вторую строку. Можно ли это как то исправить?
полный текст скрипта(извините, тег спойлер не сработал)
<?php
include "config.php";
$filename = "../ucoz/_s1/forum.txt";
$fd = fopen($filename, "r");
$i = 0;
mysql_query("SET CHARACTER SET cp1251");
echo "Лог ковертирования<br>";
while (!feof ($fd))
{
$bufer[$i] = fgets($fd, 4096);
$bufer[$i] = iconv("UTF-8", "Windows-1251", "$bufer[$i]");
$arr = explode("|", $bufer[$i]);
$i++;
$info = "SELECT * FROM {$prefix}_forum_forums WHERE uid = $arr[1]";
$a = mysql_query($info);
$dat_e = date('Y-m-d G:i:s' ,$arr[4]);
if($arr[6] != ""){
while($id = mysql_fetch_array($a)){
$forumid = $id[id];
}
$query = "INSERT IGNORE INTO {$prefix}_forum_topics (`tid`, `forum_id`, `title`, `topic_descr`, `post`, `author_topic`, `start_date`, `topic_status`, `uid`, `last_date`, `last_poster_name`) VALUES
(0, '$forumid', '$arr[8]', '$arr[9]', '$arr[6]', '$arr[10]', '$dat_e', '$arr[5]', '$arr[0]', '$dat_e', '$arr[12]');
";
$result = mysql_query($query);
if(!$result) { echo ("<font color=red>MySQL вернула ошибку <br><textarea style='width: 300px; height: 200px'>".mysql_error()."</textarea><br> в коде <br><textarea style='width: 300px; height: 200px'>{$query}</textarea><br><br></font>");} else echo "Тема «$arr[8]» успешно сконвертирована<br>";
}
}
fclose($fd);
echo "Конвертация тем завершена!<br>";
?>
Третий этап проходит наполовину, то есть он делает названия форумов, но после каждого сконвертированного названия вылетает ошибка, аналогичная первой!
Лог ковертирования
Категория «Лучшие статьи» успешно сконвертирована
MySQL вернула ошибку
Unknown column 'uid' in 'field list'
Приведу полный текст скрипта
<?php
include "config.php";
$filename = "../ucoz/_s1/fr_fr.txt";
$fd = fopen($filename, "r");
$i = 0;
$e = 0;
mysql_query("SET CHARACTER SET cp1251");
echo "Лог ковертирования<br>";
while (!feof ($fd))
{
$bufer[$i] = fgets($fd, 4096);
$bufer[$i] = iconv("UTF-8", "Windows-1251", "$bufer[$i]");
$arr = explode("|", $bufer[$i]);
$i++;
if($arr[2] == 1)
{
if($arr[5] != ""){
$query = "INSERT IGNORE INTO {$prefix}_forum_category (`sid`, `cat_name`, `posi`) VALUES
(0, '$arr[5]', 1);
";
$result = mysql_query($query);
if(!$result) { echo ("<font color=red>MySQL вернула ошибку <br><textarea style='width: 300px; height: 200px'>".mysql_error()."</textarea><br> в коде <br><textarea style='width: 300px; height: 200px'>{$query}</textarea><br><br></font>");} else echo "Категория «$arr[5]» успешно сконвертирована<br>";
}
$e++;
$arr[2] = 1;
}
else{
if($arr[5] != ""){
$arr[11] = date('Y-m-d G:i:s' ,$arr[11]);
$query = "INSERT IGNORE INTO {$prefix}_forum_forums (`id`, `main_id`, `name`, `description`, `access_read`, `uid`, `f_last_title`, `f_last_poster_name`, `f_last_tid`, `topics`, `posts` , `f_last_date`) VALUES
(0, '$e', '$arr[5]', '$arr[6]', '1:2:3:4:5', '$arr[0]', '$arr[17]', '$arr[15]', '$i', '$arr[16]', '$arr[10]', '$arr[11]');
";
$result = mysql_query($query);
if(!$result) { echo ("<font color=red>MySQL вернула ошибку <br><textarea style='width: 300px; height: 200px'>".mysql_error()."</textarea><br> в коде <br><textarea style='width: 300px; height: 200px'>$query
</textarea><br><br></font>");} else echo "Форум «$arr[5]» успешно сконвертирован<br>";
}
}
}
fclose($fd);
echo "Конвертация категорий и форумов завершена!<br>";
?>
Надеюсь, мне помогут!!! | |