Бесплатные PHP скрипты - форум техподдержки

Бесплатные PHP скрипты - форум техподдержки

Форум техподдержки WR-Скриптов на php. Обсуждаем: основы программирования на PHP 5 - 7 версий, различные подходы к написанию скриптов на php 7 без MySQL. А также WR-скрипты: бесплатные доски объявлений, скрипты форумов, Гостевые книги, Каталог ссылок, Галерея, Фотоальбом, Счётчики, Рассылки, Анекдот и другие. Принимаются пожелания для новых версий. Сообщите какой скрипт нужен для Вашего сайта, постараемся найти или реализовать. Скачать скрипты можно бесплатно. Вместе мы сделаем бесплатные php скрипты лучше и доступнее!

Главная сайта бесплатных php скриптовГлавная сайта   ПоискПоиск  
Сегодня: 19.04.2024 - 14:23:28
Страницы:  1 ... 3  4  5  6  

Изменение структуры БД с txt на DBF

Объявление - WR-Scriptы в UTF-8 кодировке

Активно обновляю скрипты и перевожу их в UTF-8 кодировку. Список перекодированных php скриптов доступен на главной странице сайта. Скачивайте скрипты и устанавливайте на свой сайт! В ближайшее время обновлю каталог знакомств, форум Про, фотоальбом, доски объявлений лайт и ЛЮКС.

На форуме, пожалуйста, пишите что модернизировать в скриптах в первую очередь. Постараюсь исправить большую часть пожеланий!
Планирую продолжить работы весь 2023 год.

АвторСообщение

sfinexer

S
Участник форума


Цитата:

оптимальнее чем 300 раз перезаписывать одну и туже переменную.

Я это знаю, но видимо когда вначале у разработчика было одна-две замены, в принципе можно и переписать пару раз, а когда замен стало больше, то просто стал делать по подобию.

Да там этот код такая мелочь посравнению с тем что в цикле идет скажем

Код:
do {
$basa=dbase_open("base.dbf",2) or die("<BR>Ошибка - невозможно открыть <B>базу данных 'base.dbf'</B>. Проверьте наличие файла и права доступа на файл");
$dt=dbase_get_record($basa,$fm);
dbase_close($basa);

Ну и цикл конечно не закончен, я тока начало показал.
Прикинь, если в цикле к мускулу конектится и закрывать соединение
оригинал

Код:
do {
$basa=dbase_open("base.dbf",2) or die("<BR>Ошибка - невозможно открыть <B>базу данных 'base.dbf'</B>. Проверьте наличие файла и права доступа на файл");
$dt=dbase_get_record($basa,$fm);
dbase_close($basa);
if ($msginout==TRUE) {$num=$itogo-$fm+2;}
// обрабатываем REPLACER'ом данные
$xtime=replacer($dt[1]); $name =replacer($dt[2]); $email=replacer($dt[3]);
$msg=null; for ($i=4; $i<9; $i++) {$msg.=$dt[$i];} $msg=replacer($msg);// Cклеиваем всё сообщение в одну переменную
$msg=str_replace("&lt;br&gt;","
",$msg);
$msg=str_replace("","<B><font color=red>",$msg);
$msg=str_replace("
","</font></B>",$msg);

У меня

Код:
$dt= Base::tabread("msg, all, $nach, $poz");
do {
$xtime=replacer($dt["timestamp"][$fm])+$tz*3600;
$name =replacer($dt["name"][$fm]);
$email=replacer($dt["email"][$fm]);
$msg=null; $msg=$dt["msg"][$fm];
$msg=str_replace("&lt;br&gt;","
",$msg);
$msg=str_replace("","<B><font color=red>",$msg);
$msg=str_replace("
","</font></B>",$msg);

Репласеры я не трогал, это мода, бетта версия, может поправлю, я просто показать как запросы обрабатываются.
Но тут варианта два, или оптимизировать или писать с нуля, по времени также выйдет.

Иными словами, эти примеры что тут есть хоть и НЕ оптимальны, но посравнению с другими перлами, они почти не вносят никакой нагрузки на сервер.

PS: Капчу конечно можно написть в пару строчек, вопрос в том, что если проект станет более развитым, то боты найдут управу на слабую капчу, поэтому капча идет обычно как класс, ну или подключается в начале скрипта а потом там где надо выводиться, так проще вносить в нее изменения не трогая базовый код.

Сообщение # 49 16.10.09 - 10:15:19

sfinexer

S
Участник форума

Вот будет форум 2.0 тогда его форкнем, я уже примерно накидал базу данных для него. Само собой база моей разработки.
http://wr-script.exergo.ru/forum/moda/
Вот таблицы поля и тыпв которые пока в ней есть, ну и описание полей
http://wr-script.exergo.ru/forum/moda/struktura.html

Там потом поменяю, введу когда пару строчек в базу, для возможности использования целочисленных полей.
Ну и чтение куска записи из таблицы.
в гостевой в моей моде код запроса
$dt= Base::tabread("msg, all, $nach, $poz");
Ну $dt понятно, массив первый элемент которого $dt["name"][$fm] равен имени шапки, второй это то что мы запрашивали. Кстати, в мускуле можно номерами выводить шапку таблицы, но у меня можно номера использовать при создании таблицы.
msg- имя таблицы
all - то что выводим все поля из таблицы, в ином случае надо перечислить те которые выводить.
$nach откуда выводим, например с 40 записи
$poz - сколько записей выводим если $poz=10 то выведется с 40 до 50 записи если $poz=-4 то выведется с 36 до 40 ну и + обработка неверного запроса, и всяких там неверно заданных значений. Можно вывести и всю таблицу... там два метода есть
$dt= Base::tabread("msg, all, all");
$dt= Base::tabread("msg, all, begin, end");

Ну есть и флаги сортировки, в данном случая закоментил в базе их... но можно выводить как по ID, так и по сортировки этого ID (автоинкримент, он есть всегда, отменить его нельзя.)

То что выбор пощел в сторону DBF это где-то может и плюс, где-то и минус, но в любом случае, базой надо верно пользоваться, а с таким подходом, что мускул что обычные текстовые файлы, всеравно слетать будет.

Сообщение # 50 16.10.09 - 10:40:14

admin02

A
Участник форума


Цитата:

Ну и цикл конечно не закончен, я тока начало показал.Прикинь, если в цикле к мускулу конектится и закрывать соединение оригинал


Мускл конектиттся 1 раз в первых строках скрипт. Дальше идут только запросы на выборку данных =)


Цитата:
что мускул что обычные текстовые файлы, всеравно слетать будет.


За 3 года мускул переклиноло 1 раз и то исправляется "Оптимизировать" за 30 сек. Про dbf незнаю посмотрим в таком случае. А текстовые файл вообще курят в строне. Чисто так сказать нах такая ебл.. когда база текстовых летит чуть не какждую неделю. Я уже заиб.. бекапы делать. Лучше использовать мускл и несидеть на гвоздю и ждать когда база слетит.

Сообщение # 51 16.10.09 - 13:47:12

admin02

A
Участник форума

Сейчас у меня в базе 3533010 записей и работает как часики. http://speed-tester.info/

Сообщение # 52 16.10.09 - 13:50:09

sfinexer

S
Участник форума


Цитата:

Сейчас у меня в базе 3533010 записей и работает как часики. http://speed-tester.info/

Ну ты вырвал из текста записи, и говориш о другом.

353 тыши записей, а какая разница сколько, конечно это ближе к ораклу....
Да и разница тока в том как сформирована таблица индексов в БД, это специфика самой базы.
У меня более выгодна для небольшого количества записей, для больше го просто три таблицы надо и все.

То что работае да, вопрос как быстро

Сообщение # 53 16.10.09 - 18:04:36

admin02

A
Участник форума

Посмотрим как часто будет ваша база лететь Тогда оценим. Жду новой доски объявлений.

Сообщение # 54 16.10.09 - 18:27:23

sfinexer

S
Участник форума


Цитата:

http://speed-tester.info/

Тест скорости инета ебанутый.
Он верен, но он старый ;)

Сообщение # 55 16.10.09 - 18:30:56

sfinexer

S
Участник форума


Цитата:

Жду новой доски объявлений.

Гостевой чтоли...
А Я писал, база данных на 12 версии там стабизирована, хоть сейчас уже и 13 вышла (кстати тут ее можно скачать, вместе с описанием) но гостевая на 12 работает.
Там тока орфограйфия и прочий текст, а так ничего меняться не будет.

Сообщение # 56 16.10.09 - 18:32:37

sfinexer

S
Участник форума

Жду, как слетит скажеш, можеш тему создать что слетела.

Сообщение # 57 16.10.09 - 18:35:00

sfinexer

S
Участник форума


Цитата:

Жду, как слетит скажеш, можеш тему создать что слетела.

Ну и архивчик слетевшей базы приложи к теме где напишеш что она слетела.

Сообщение # 58 16.10.09 - 18:41:29

sfinexer

S
Участник форума


Цитата:

архивчик слетевшей базы

Конфиг базы само собой по умолчанию оставляем
Тоесть тестим то что ставит комкователь, база слетит - в архив и пишем что слетела.

Сообщение # 59 16.10.09 - 18:46:46

sfinexer

S
Участник форума

в 14 версии там полный многопоточный режим доработан... в 13 он тоже есть, но он в конфиге убран.
Ну и пару функций новых в 14 добавлено, немного переоформлены странички.
Впрочем я писал, что 14 это некая промежуточная версия будет, потом будут более глобальные изменения.
Форум будет на 16 версии сделан. так как нив 14 нив 15 не будет флагов, а следовательно, форум несможет вывести все посты какого-то пользователя.

Сообщение # 60 16.10.09 - 19:27:06
РЕБЯТА - ТУТ ЖЕ ПОЛНО НОРМАЛЬНЫХ ПАРНЕЙ ИЛИ Я САМ? :Предыдущая темаСледующая тема: Все наши пароли в открытом доступе.
Страницы:  1 ... 3  4  5  6  

Сообщение
Имя E-mail
Сообщение

Нажмите на точку возле имени для обращения к участнику

Смайлы:

Ещё смайлы
Эмодзи
         
Защитный код: (введите цифры, которые на синем фоне)
Ответ на вопрос: (Какой сейчас год?)
   
WR-Счётчик
Powered by WR-Forum Professional © 2.3 UTF-8 beta версия