 |
Бесплатные PHP скрипты - форум техподдержки |
Форум техподдержки WR-Скриптов на php. Обсуждаем: основы программирования на PHP 5 - 7 версий, различные подходы к написанию скриптов на php 7 без MySQL. А также WR-скрипты: бесплатные доски объявлений, скрипты форумов, Гостевые книги, Каталог ссылок, Галерея, Фотоальбом, Счётчики, Рассылки, Анекдот и другие. Принимаются пожелания для новых версий. Сообщите какой скрипт нужен для Вашего сайта, постараемся найти или реализовать. Скачать скрипты можно бесплатно. Вместе мы сделаем бесплатные php скрипты лучше и доступнее!
|
| Сегодня: 10.12.2025 - 08:12:50
Страницы: 1 ... 2 3 4 5 6 ... 8 Мода ГОСТЕВОЙ КНИГИ| Объявление - WR-Scriptы в UTF-8 кодировке |
|---|
Активно обновляю скрипты и перевожу их в UTF-8 кодировку. Список перекодированных php скриптов доступен на главной странице сайта. Скачивайте скрипты и устанавливайте на свой сайт! В ближайшее время обновлю каталог знакомств, форум Про, фотоальбом, доски объявлений лайт и ЛЮКС.
На форуме, пожалуйста, пишите что модернизировать в скриптах в первую очередь. Постараюсь исправить большую часть пожеланий! Планирую продолжить работы весь 2026 год.
|
| Автор | Сообщение |
|---|
sfinexer •
S Участник форума
|
Цитата:
и сколь такая база может содержать????
|
ну.... вобще, вроде сейчас 2176782336 записей вроде.... Вобще, потом будет иное значение а так 2^32 записей бедет, это же всего 4 байта для индекса.... Таблица индексов полдностью НЕ считывается, только те места что указано в главной таблице индексов. а там 4 байта на запись, там уже все 4294967296 записей | |
|
| Сообщение # 40 |
29.09.09 - 00:46:07
|  | ВИКТОР_ЗАКАЛ •
В гость
|
Код: Notice: Undefined variable: name in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 3
Notice: Undefined variable: in in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 3
Notice: Undefined variable: file in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 3
Notice: Undefined variable: line in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 4
Notice: Undefined variable: plugrun in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 5
Notice: Undefined variable: name in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 5
Notice: Undefined variable: plugrun in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 5
Notice: Undefined variable: name in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 5
Notice: Undefined variable: plugrun in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 5
Notice: Undefined variable: name in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 5
Notice: Undefined variable: plugrun in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 5
Notice: Undefined variable: in in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 8
Notice: Undefined variable: name in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 10
Notice: Undefined variable: ret in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 11
Notice: Undefined variable: cnt in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 11
Notice: Undefined variable: name in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 11
Notice: Undefined variable: plugrun in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 11
Notice: Undefined variable: num in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 13
Notice: Undefined variable: name in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 13
Notice: Undefined variable: plugrun in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 13
Notice: Undefined variable: k in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 13
Notice: Undefined variable: v in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 14
Notice: Undefined variable: run in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 14
Notice: Undefined variable: name in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 14
Notice: Undefined variable: k in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 14
Notice: Undefined variable: cnt in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 14
Notice: Undefined variable: num in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 15
Notice: Undefined variable: file in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 15
Notice: Undefined variable: line in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 15
Notice: Undefined variable: err in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 15
Notice: Undefined variable: name in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 15
Notice: Undefined variable: file in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 15
Notice: Undefined variable: line in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 15
Notice: Undefined variable: v in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 15
Notice: Undefined variable: err in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 16
Notice: Undefined variable: v in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 16
Notice: Undefined variable: err in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 19
Notice: Undefined variable: v in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 19
Notice: Undefined variable: fn in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 21
Notice: Undefined variable: v in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 22
Notice: Undefined variable: err in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 23
Notice: Undefined variable: fn in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 24
Notice: Undefined variable: v in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 24
Notice: Undefined variable: err in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 25
Notice: Undefined variable: fn in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 28
Notice: Undefined variable: k in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 29
Notice: Undefined variable: v in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 29
Notice: Undefined variable: err in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 30
Notice: Undefined variable: ret in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 30
Notice: Undefined variable: k in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 30
Notice: Undefined variable: v in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 30
Notice: Undefined variable: in in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 30
Notice: Undefined variable: run in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 30
Notice: Undefined variable: file in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 30
Notice: Undefined variable: line in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 33
Notice: Undefined variable: k in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 33
Notice: Undefined variable: v in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 33
Notice: Undefined variable: err in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 35
Notice: Undefined variable: ret in /home/users/p/proggi/domains/wr-script.exergo.ru/board/config.php on line 37 | | |
|
| Сообщение # 41 |
29.09.09 - 00:50:32
|  | sfinexer •
S Участник форума
|
324 записи 56 килобайт база занимает.
А по символам, ну там же стоит ограничение 50000 символов, это меняется все... Другое дело, что нужно ли больше, это всеже нагрузка, и тут любую базу повесить можно, прочитать и вывести данные... + они не выводятся, они передаются скрипту в виде таблицы, ну например, вот вывод поста $dt= Base::tabread("msg, all, $fm, 0"); $xtime=replacer($dt["timestamp"][$fm]); $name =replacer($dt["name"][$fm]); $email=replacer($dt["email"][$fm]); $msg=null; $msg=$dt["msg"][$fm];
Делаем запросик, ну а дальше я распихал элементы которые пришли с запросом, согластно массиву что в оригинальном скрипте... Вобще конечно это крайне не оптимально, я потом поправлю код... я както приводил пример чата, там всего 3 строки на вывод постов. Причем в ответе на запрос, выдается откуда и ДО куда сделан вывод, а у мишки это рассчитывается ранее... Причем раньше это было еще и глючно у него. | |
|
| Сообщение # 42 |
29.09.09 - 00:51:27
|  | ВИКТОР_ЗАКАЛ •
В гость
|
function plugrun($name,$in=array(),$file=null,$line=null) { global $plugrun; if (!isset($plugrun[$name]) || !is_array($plugrun[$name]) || !count($plugrun[$name])) return null; if (!is_int($plugrun[0])) exit("errM2090"); globalvar('plugin'); //if (!is_array($in)) $in=array(); if (empty($name)) err("errM2088"); $ret=null; $cnt=count($plugrun[$name]); $num=0; foreach ($plugrun[$name] as $k=>$v) { $run=array($name,$k,$cnt,$num); if ($file && $line) $err="
Смотрите вызов <b>plugrun('$name',...)</b> из файла <b>".shortpath($file).":$line</b>. Выполнить модуль <b>$v[1]</b> не удалось, попробуйте его отключить."; else $err=""; switch ($v[0]) { case 1: if (!defined("plug_$v[1]")) err("errM2069: В модуле [$v[1]] не объявлена спец.константа plug_$v[1].$err"); if (is_array($v[3]) && count($v[3])) { foreach ($v[3] as $fn) { if (!pregfn($fn)) err("errM2079: имя файла [$fn] в модуле [$v[1]] недопустимо.$err"); if (!file_exists($fn)) err("errM2083: не найден файл [$fn], необходимый модулю [$v[1]].$err"); include_once($fn); } } if (!function_exists($k)) err("errM1947: Вызов несуществующей функции [$k] модуля [$v[1]].$err"); $ret=$k($v[2],$in,$run,$file,$line); break; default: err("errM1948: Вызов функции [$k] модуля [$v[1]] невозможен, т.к. указан неизвестный тип [$v[0]] передачи параметров.$err"); } if (is_null($ret)) return null; } return $ret; } | |
|
| Сообщение # 43 |
29.09.09 - 00:51:48
|  | sfinexer •
S Участник форума
|
Хех, а это уже серьезная дырка))) | |
|
| Сообщение # 44 |
29.09.09 - 00:52:40
|  | sfinexer •
S Участник форума
|
ВИКТОР_ЗАКАЛ, конфиг не трогаем ;) это пусть на совести разработчика будет. завтра попробую чтонить конечно поправить там... но я и непредполагал что там настролько все дыряво. | |
|
| Сообщение # 45 |
29.09.09 - 00:57:28
|  | ВИКТОР_ЗАКАЛ •
В гость
|
|
| Сообщение # 46 |
29.09.09 - 01:00:53
|  | sfinexer •
S Участник форума
|
324 сообщения размер базы 56 килобайт
Вобще, примерно половину занимает место эти фиксированные поля.... а остальное там система индексов и форматирование на лету исправит если что  | |
|
| Сообщение # 47 |
29.09.09 - 01:02:09
|  | sfinexer •
S Участник форума
|
Цитата:
| там настролько все дыряво |
Ну я знал конечно... но вобще не предполагал что можно вставить скрипт. Тут главное что моя база держит, и ИМХО получше чем в оригинале.... Покрайней мере по размеру  | |
|
| Сообщение # 48 |
29.09.09 - 01:03:57
|  | ВИКТОР_ЗАКАЛ •
В гость
|
КСТАТЕ, ФОРУМ У МИШИ ПОХОЖ НА ДВИЖОК WAP MOTOR Код: #-----------------------------------------------------# # ********* WAP-MOTORS ********* # # Made by : VANTUZ # # E-mail : visavi.net@mail.ru # # Site : http://pizdec.ru # # WAP-Site : http://visavi.net # # ICQ : 36-44-66 # # Вы не имеете право вносить изменения в код скрипта # #-----------------------------------------------------# | Код: require_once"../template/start.php"; require_once"../template/regglobals.php"; require_once"../template/conf ig.php"; require_once"../template/functions.php"; require_once"../template/antidos.php"; require_once"../te mplate/cookies.php"; require_once"../template/gzip.php"; require_once"../template/header.php"; require_once "../template/referer.php"; include_once"../themes/$config_themes/index.php"; include_once"../template/isset. php";
$dates=date("d.m.y / H:i",$sitetime);
if ($provlog==$_SESSION['log'] && $provpar==md5($_SESSION['par']) && $_SESSION['log']!="" && md5($_SESSION['par'])!="") { if ($dostup==101 || $dostup==102 || $dostup==103 || $dostup==105){
echo'<img src="../images/img/menu.gif" alt=""> <b>Управление форумом</b>
';
//----------------------------- Пересчет статистики ------------------------// if(isset($event)) { if ($event =="revolushion") { if ($dostup==101 || $dostup==102){ $lines = file("../local/dataforum/mainforum.dat"); $countmf=count($lines)-1; $i="-1";$u=$countmf-1;$k="0";
do {$i++; $dt=explode("|", $lines[$i]);
$fid=$dt[0]; if ((is_file("../local/dataforum/topic$fid.dat")) && (sizeof("../local/dataforum/topic$fid.dat")>0)) { $fl=file("../local/dataforum/topic$fid.dat"); $kolvotem=c ount($fl); $kolvomsg="0"; for ($itf=0; $itf<$kolvotem; $itf++) {$forumdt = explode("|", $fl[$itf]);
$cd=$forumdt[7]; $msgfile=file("../local/dataforum/$cd.dat"); $countmsg=count($msgfile); $kolvomsg=$kolvomsg+$countmsg;} if ($kolvotem=="0") {$dt[8]="";} $lines[$i]=$dt[0].'|'.$dt[1].'|'.$dt[2].'|'.$dt[3].'|'.$kolvotem.'|'.$kolvomsg.'|'.$dt[6].'|'.$d t[7].'|'.$dt[8].'|'.$dt[9].'|'.$dt[10].'|'; }else{ $kolvotem="0"; $kolvomsg="0"; $lines[$i]=$dt[0].'|'.$dt[1].'|'.$dt[2].'|'.$dt[3].'|'.$kolvotem.'|'.$kolvomsg.'|'.$dt[6].'|'.$dt[7].'|'.$dt [8].'||'.$dt[10].'|'; }
} while($i < $countmf);
$file=file("../local/dataforum/mainforum.dat"); $fp=fopen("../local/dataforum/mainforum.dat","w "); flock ($fp,LOCK_EX); for ($i=0;$i< sizeof($file);$i++) {fputs($fp,"$lines[$i]\r\n");} flock ($fp,LOCK_UN); fclose($fp); chmod($fp, 0777); chmod("../local/dataforum/mainforum.dat", 0777);
echo 'Всё успешно пересчитано '; echo '<a href="forum.php?'.SID.'">Продолжить</a> '; include_once"../themes/$config_themes/foot.php"; exit; }}}
//------------------------ Cдвиг топиков -------------------------------// if(isset($movetopic)) { if ($movetopic!="") { $move1=$movetopic; if ($where=="0") {$where="-1";} $move2=$move1-$where; $file=file("../local/dataforum/mainforum.dat"); $imax=sizeof($file); if (($move2>=$imax) or ($move2<"0")) { echo 'Нельзя туда двигать! '; echo '<a href="forum.php?'.SID.'">Продолжить</a> '; include_once"../themes/$config_themes/foot.php"; exit;} $data1=$file[$move1]; $data2=$file[$move2];
$fp=fopen("../local/dataforum/mainforum.dat","a+"); flock ($fp,LOCK_EX); ftruncate ($fp,0); for ($i=0; $i<$imax; $i++) {if ($move1==$i) {fputs($fp,$data2);} else {if ($move2==$i) {fputs($fp,$data1);} else {fputs($fp,$file[$i]);}}} fflush ($fp); flock ($fp,LOCK_UN); fclose($fp); chmod($fp, 0777); chmod("../local/dataforum/mainforum.dat", 0777); header ("Location: forum.php?".SID); //Раздел успешно сдвинут! exit;}}
//------------------------ Подтверждение удаления топиков -------------------------------// if(isset($provtop)) { echo 'Вы действительно хотите удалить топик? '; echo 'Прежде чем удалить его необходимо удалить все темы внутри вручную '; echo '<img src="../images/img/error.gif" alt=""> <a href="forum.php?fxd='.$provtop.'&'.SID.'">Удалить</a> '; echo '<img src="../images/img/back.gif" alt=""> <a href="forum.php?'.SID.'">Вернуться назад</a> '; include_once"../themes/$config_themes/foot.php"; exit; } //------------------------ Удаление топиков -------------------------------// if(isset($fxd)) { if ($fxd!="") { $file=file("../local/dataforum/mainforum.dat"); $fp=fopen("../local/dataforum/mainforum.dat","w"); flock ($fp,LOCK_EX); for ($i=0;$i< sizeof($file);$i++) { if ($i==$fxd) {unset($file[$i]);} } fputs($fp, implode("",$file)); flock ($fp,LOCK_UN); fclose($fp); chmod($fp, 0777); chmod("../local/dataforum/mainforum.dat", 0777); header ("Location: forum.php?isset=mp_delforums&".SID); }else{header ("Location: forum.php?isset=mp_nodelforums&".SID);} exit;}
//----------------------- Удаление тем --------------------------------// if ($action=="deltopic"){ if ($id!="" && $fid!="") {
$id=check($id); $fid=(int)$fid;
$file=file("../local/dataforum/topic$fid.dat"); $count=count($file) ;
for ($b=0; $b<$count; $b++) { $idbase=explode("|",$file[$b]); if ( $id == $idbase[7]) { $stroka=$b; break; }}
if($stroka!==""){ unlink ("../local/dataforum/$id.dat");
$fp=fopen("../local/dataforum/topic$fid.dat","w"); flock ($fp,LOCK_EX); for ($i=0;$i< sizeof($file);$i++) { if ($i==$stroka) {unset($file[$i]);} } fputs($fp, implode("",$file)); flock ($fp,LOCK_UN); fclose($fp); chmod($fp, 0777); chmod("../local/dataforum/topic$fid.dat", 0777); } header ("Location: forum.php?fid=$fid&page=$page&isset=mp_delthemes&".SID); }else{header ("Location: forum.php?fid=$fid&page=$page&isset=mp_nodelthemes&".SID);} exit; }
//----------------------- Удаление сообщений --------------------------------// if (isset($topicxd)) { if ($topicxd!="") { $topicxd=$topicxd-1; $file=file("../local/dataforum/$id.dat");
if (count($file)==1) { echo ' В ТЕМЕ должно остаться хотябы одно сообщение! '; echo '<a href="forum.php?event=topic&fid='.$fid.'&id='.$id.'&page='.$page.'&'.SID.'">Продолжить</a> '; include_once"../themes/$config_themes/foot.php"; exit;}
$fp=fopen("../local/dataforum/$id.dat","w"); flock ($fp,LOCK_EX); for ($i=0;$i< sizeof($file);$i++) { if ($i==$topicxd) {unset($file[$i]);} } fputs($fp, implode("",$file)); flock ($fp,LOCK_UN); fclose($fp); chmod($fp, 0777); chmod("../local/dataforum/$id.dat", 0777);
header ("Location: forum.php?event=topic&fid=$fid&id=$id&page=$page&".SID); //Сообщение успешно удалено! exit; }} | | |
|
| Сообщение # 49 |
29.09.09 - 01:06:24
|  | ВИКТОР_ЗАКАЛ •
В гость
|
ПРОДОЛЖЕНИЕ Код: //----------------------- Добавление разделов --------------------------------// if(isset($event)) { if ($event =="addmainforum") { if ($zag!="") {
$nextnum="1"; if (is_file("../local/dataforum/mainforum.dat")) { $lines=file("../local/dataforum/mainforum.dat"); $imax = count($lines); $i=0; do {$dt = explode("|", $lines[$i]); if ($nextnum<$dt[0]) {$nextnum=$dt[0];} $i++; } while($i < $imax); $nextnum++; }
$msg=check($msg); $zag=check($zag);
$txtmf=$nextnum.'|'.$zag.'|рус||0|0||||||'; $txtmf=preg_replac e ("|[\r\n]+|si","",$txtmf);
$fp=fopen("../local/dataforum/mainforum.dat","a+"); flock ($fp,LOCK_EX); fputs($fp,"$txtmf\r\n"); fflush ($fp); flock ($fp,LOCK_UN); fclose($fp); chmod($fp, 0777); chmod("../local/dataforum/mainforum.dat", 0777); header ("Location: forum.php?isset=mp_addforums&".SID);
}else{header ("Location: forum.php?isset=mp_noaddforums&".SID);} exit; }
//----------------------- Переименование раздела --------------------------------// if ($event =="frdmainforum") { if ($zag != "" && $frd!="") {
$lines = file("../local/dataforum/mainforum.dat"); $dt = explode("|", $lines[$frd]);
$zag=check($zag); $zag=preg_replace ("|[\r\n]+|si","",$zag);
$txtmf=$dt[0].'|'.$zag.'|'.$dt[2].'|'.$dt[3].'|'.$dt[4].'|'.$dt[5].'|'.$dt[6].'|'. $dt[7].'|'.$dt[8].'|'.$dt[9].'|'.$dt[10].'|'; $txtmf=preg_replace ("|[\r\n]+|si","",$txtmf);
$file=file("../local/dataforum/mainforum.dat"); $fp=fopen("../local/dataforum/m ainforum.dat","a+"); flock ($fp,LOCK_EX); ftruncate ($fp,0); for ($i=0;$i< sizeof($file);$i++) {if ($frd!=$i) {fputs($fp,$file[$i]);} else {fputs($fp,"$txtmf\r\n");}} fflush ($fp); flock ($fp,LOCK_UN); fclose($fp); chmod($fp, 0777); chmod("../local/dataforum/mainforum.dat", 0777);
header ("Location: forum.php?isset=mp_editrazdel&".SID); //Раздел успешно переименован }else{ header ("Location: forum.php?frd=$frd&isset=mp_noeditrazdel&".SID);} exit; }
//----------------------- Закрытие тем --------------------------------// if ($event=="zakr") {
$fileg=file("../local/dataforum/$id.dat"); $fileg=array_reverse($fileg); $ddat=explode("|", $fileg[0]);
$text=$log.'|рус|'.$brow.', '.$ip.'|'.$ddat[3].'|<img src="../images/smiles2/closed.gif" alt=""> Тема закрыта для обсуждения!||CLOSED|'.$id.'|'.$fid.'|'.$sitetime.'|'.$ddat[10].'|';
$text=stripslashes($text); $fp=fopen(" ../local/dataforum/$id.dat","a+"); flock ($fp,LOCK_EX); fputs($fp,"$text\r\n"); fflush ($fp); flock ($fp,LOCK_UN); fclose($fp); chmod($fp, 0777); chmod("../local/dataforum/$id.dat", 0777);
//Тема закрыта для обсуждения! header ("Location: forum.php?event=topic&fid=$fid&id=$id&".SID); exit;}
//-------------------------- Открытие тем ----------------------------//
if ($event=="otkr") {
$file=file("../local/dataforum/$id.dat"); $file=array_reverse($file); $fp=fopen("../local/dataforum/$i d.dat","w"); flock ($fp,LOCK_EX);
unset($file[0]); $file=array_reverse($file); fputs($fp, implode("",$file)); flock ($fp,LOCK_UN); fclose($fp); chmod($fp, 0777); chmod("../local/dataforum/$id.dat", 0777);
//Тема снова открыта header ("Location: forum.php?event=topic&fid=$fid&id=$id&".SID); exit;}
//----------------------- Закрепление тем --------------------------------// if ($event=="locked") { //------------------------------------- $file=file("../local/dataforum/topic$fid.dat"); foreach($file as $index => $val){ $alldata = explode("|",$file[$index]); if($alldata[7]==$id){ $file[$index]=$alldata[0].'|'.$alldata[1].'|'.$alldata[2].'|'.$alldata[3].'|'.$alldata[4].'|'.$alldata[5].'|'. $alldata[6].'|'.$alldata[7].'|'.$alldata[8].'|'.$alldata[9].'|'."ON|\r\n"; $fp=fopen("../local/dataforum/topic$fid.dat","w"); flock ($fp,LOCK_EX); fputs($fp, implode("",$file)); flock ($fp,LOCK_UN); fclose($fp); chmod($fp, 0777); } } //---------------------------------------- $file=file("../local/dataforum/$id.dat"); $file=array_reverse( $file); $fp=fopen("../local/dataforum/$id.dat","w"); flock ($fp,LOCK_EX);
$post= explode("|", $file[0]); $file[0]=$post[0].'|'.$post[1].'|'.$post[2].'|'.$post[3].'|'.$post[4].'|'.$post[5].'|'.$post[6].'| '.$post[7].'|'.$post[8].'|'.$post[9].'|'."ON|\r\n"; $file=array_reverse($file); fputs($fp, implode("",$file)); flock ($fp,LOCK_UN); fclose($fp); chmod($fp, 0777);
//Тема закреплена! header ("Location: forum.php?event=topic&fid=$fid&id=$id&".SID); exit;}
//-------------------------- Открепление тем ----------------------------// if ($event=="unlocked") { //------------------------------------- $file=file("../local/dataforum/topic$fid.dat"); foreach($file as $index => $val) {$alldata = explode("|",$file[$index]); if($alldata[7]==$id){ $file[$index]=$alldata[0].'|'.$alldata[1].'|'.$alldata[2].'|'.$alldata[3].'|'.$alldata[ 4].'|'.$alldata[5].'|'.$alldata[6].'|'.$alldata[7].'|'.$alldata[8].'|'.$alldata[9].'||'."\r\n"; $fp=fopen("../local/dataforum/topic$fid.dat","w"); flock ($fp,LOCK_EX); fputs($fp, implode("",$file)); flock ($fp,LOCK_UN); fclose($fp); chmod($fp, 0777); } } //---------------------------------------- $file=file("../local/dataforum/$id.dat"); $file=array_reverse( $file); $fp=fopen("../local/dataforum/$id.dat","w"); flock ($fp,LOCK_EX);
$post= explode("|", $file[0]); $file[0]=$post[0].'|'.$post[1].'|'.$post[2].'|'.$post[3].'|'.$post[4].'|'.$post[5].'|'.$post[6].'| '.$post[7].'|'.$post[8].'|'.$post[9].'||'."\r\n"; $file=array_reverse($file); fputs($fp, implode("",$file)); flock ($fp,LOCK_UN); fclose($fp); chmod($fp, 0777);
//Тема откреплена header ("Location: forum.php?event=topic&fid=$fid&id=$id&".SID); exit;}
//------------------------ Переименование темы -------------------------------//
if ($event=="rdtema") { if ($zag!="" && $id!="" && $fid!="") {
$fid=(int)$fid; $id=check($id); $zag=check_full($zag);
$lines=file("../local/dataforum/topic$fid.dat" ); $count=count($lines);
for ($b=0; $b<$count; $b++) { $idbase=explode("|",$lines[$b]); if ( $id == $idbase[7]) { $stroka=$b; break; }}
$dt=explode("|", $lines[$stroka]);
$txtmf=$dt[0].'|рус|'.$dt[2].'|'.$zag.'|'.$dt[4].'|'.$dt[5].'|'.$dt[6].'|'.$id.'|'.$fid.' |'.$dt[9].'|'.$dt[10].'|';
$file=file("../local/dataforum/topic$fid.dat"); $fp=fopen("../local/dataforum/t opic$fid.dat","a+"); flock ($fp,LOCK_EX); ftruncate ($fp,0); for ($i=0;$i< sizeof($file);$i++) { if ($stroka!=$i) {fputs($fp,$file[$i]);} else {fputs($fp,"$txtmf\r\n");} } fflush ($fp); flock ($fp,LOCK_UN); fclose($fp); chmod($fp, 0777); chmod("../local/dataforum/topic$fid.dat", 0777);
$lines = file("../local/dataforum/mainforum.dat"); $i3=count($lines); do {$i3--; $dd = explode("|", $lines[$i3]); if ($dd[0]==$fid) {$realfid=$i3; } } while($i3>0); $dd = explode("|", $lines[$realfid]); if ($id==$dd[3]){
$txtdat=$dd[0].'|'.$dd[1].'|'.$dd[2].'|'.$dd[3].'|'.$dd[4].'|'.$dd[5].'|'.$dd[6].'|'.$dd[7]. '|'.$dd[8].'|'.$dd[9].'|'.$zag.'|'; $txtdat=preg_replace ("|[\r\n]+|si","",$txtdat);
$fp2=fopen("../local/dataforum/mainforum.dat","a+"); flock ($fp2,LOCK_EX); ftruncate ($fp2,0); for ($i2=0;$i2<=(sizeof($lines)-1);$i2++) {if ($i2==$realfid) {fputs($fp2,"$txtdat\r\n");} else {fputs($fp2,$lines[$i2]);}} fflush ($fp2); flock ($fp2,LOCK_UN); fclose($fp2); chmod($fp2, 0777); chmod("../local/dataforum/mainforum.dat", 0777); }
$file1=file("../local/dataforum/$id.dat"); $fs=count($file1)-1; $i1="-1"; $dt = explode("|", $file1[$fs]);
$text1=$dt[0].'|рус|'.$dt[2].'|'.$zag.'|'.$dt[4].'|'.$dt[5].'|'.$dt[6].'|'.$id.'|'.$fid.'|'.$ dt[9].'|'.$dt[10].'|'; $text1=preg_replace ("|[\r\n]+|si","",$text1);
$fp1=fopen("../local/dataforum/$id.dat","a+"); flock ($fp1,LOCK_EX); ftruncate ($fp1,0);
do {$i1++; if ($i1==$fs) {fputs($fp1,"$text1\r\n");} else {fputs($fp1,$file1[$i1]);} } while($i1 < $fs); fflush ($fp1); flock ($fp1,LOCK_UN); fclose($fp1); chmod($fp1, 0777); chmod("../local/dataforum/$id.dat", 0777); } header ("Location: forum.php?fid=$fid&page=$page&".SID); //Тема успешно изменена! exit; }
//-------------------------------------------------------//
}
if(isset($event)){
if (($event=="addtopic") or ($event=="addanswer")) { if ($fid!="") {
$mainlines = file("../local/dataforum/mainforum.dat"); $i=count($mainlines); do {$i--; $dt = explode("|", $mainlines[$i]); if ($dt[0]==$fid) {$realfid=$i;}
} while($i>0);
if (strlen($msg) > 1200 || strlen($msg) < 5) { echo '<b>Ваше сообщение пустое или слишком длинное.</b> '; echo '<a href="forum.php?newtema=add&fid='.$fid.'&'.SID.'">Повторить</a> '; include_once"../themes/$config_themes/foot.php"; exit;} | | |
|
| Сообщение # 50 |
29.09.09 - 01:08:17
|  | sfinexer •
S Участник форума
|
ВИКТОР_ЗАКАЛ, ладно, пойду спать. Редактирование конфига я убрал, так что можеш так поюзать ее, не думаю что там чтото может слететь... Хотя, то что база может слететь я не отрицаю это, правда в безопасном режиме это маловероятно.
Завтра обновлю скрипт, там и у себя потестировать можеш.
А насчет инсталлятора.... (ну у меня он кучкователь, посути он это и делает все в кучу + правила + скрипт распаковки), может и будет версия где все в архиве... архив видимо привычней, сразу пощупать можно файлики  | |
|
| Сообщение # 51 |
29.09.09 - 01:09:24
|  | ВИКТОР_ЗАКАЛ •
В гость
|
КСТАТЕ, ВАРИАНТ ТВОЕЙ БАЗЫ БУДЕТ РАБОТАТЬ НА БЕСПЛАТНЫХ ХОСТИНГАХ???? | |
|
| Сообщение # 52 |
29.09.09 - 01:12:09
|  | Страницы: 1 ... 2 3 4 5 6 ... 8
|