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

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

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

Главная сайта бесплатных php скриптовГлавная сайта   ПоискПоиск  
Сегодня: 27.04.2024 - 10:31:13
Страницы:  1  2  3  ... 6

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

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

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

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

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

WR

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

Привет всем. Начал эксперименты с DBF-файлами. Предлагаю обсудить перевод скриптов всей линейки WR на более надёжные, шустрые, удобные в модерировании и редактировании DBF-файлы.

Вот начал тестить, выкладываю тестовый php. В настоящий момент кажется очень удобно и практично.

Код:


<?
$dbname = "base.dbf"; // "name" Бд


// ЕСЛИ ФАЙЛА БД НЕТ, то создаём файл по образцу
// ГДЕ: $text="RN&#124;$date&timeSTAMP&#124;$name&#124;$email&#124;$msg1&#124;$msg1&#124;$msg2&#124;$msg3&#124;$msg4&#124;$msg5&#124;";

//Имеются следующие типы полей:
//L - Boolean. Не имеют размера и точности.
//M - Memo. (Эти не поддерживаются в PHP.) Не имеют размера и точности.
//D - Date (дата, хранимая как YYYYMMDD). Не имеют размера и точности.
//N - Number. Имеют размер и точность (количество цифр после десятичной точки).
//C - String.

if(!file_exists($dbname)) {
$def=array(
array("RN", "N",4,0),
array("timestamp","C",15),
array("name", "C",40),
array("email", "C",40),
array("msg1", "C",250),
array("msg2", "C",250),
array("msg3", "C",250),
array("msg4", "C",250),
array("msg5", "C",250));
if (!dbase_create($dbname, $def)) print "<b>ОШИБКА! База данных НЕ создана!</b>"; // создание
}

// открывает таблицу для записи (добавление)
$basa=dbase_open("base.dbf",2) or die("Ошибка - невозможно открыть '$db_name'");
$record=array("0001","21343556673","имя","емайл",
"сообщение часть 1","сообщение часть 2","сообщение часть 3","сообщение часть 4","сообщение часть 5");

if(!dbase_add_record($basa,$record)) {echo "Ошибка при добавлении записи в dbf, попробуйте добавить сообщение ещё раз!"; exit();}
dbase_close($basa);//Закрываем таблицу



$basa=dbase_open("base.dbf",2) or die("Ошибка - невозможно открыть '$db_name'");

// определяем кол-во полей в БД
$nf=dbase_numfields($basa); print $nf."
\n";

// определяем кол-во записей в БД (в том числе помеченных на удаление)
$itogo=dbase_numrecords($basa); print $itogo."
\n";

// Упапковываем базу, т.е. удаляем помеченные на удаление записи
dbase_pack($basa);

// Заменяем пред последнюю запись на другую
for ($i=0;$i<sizeof($record);$i++) {$record[$i]="1234";}

dbase_replace_record($basa,$record,$itogo-1);
//dbase_replace_record ( int dbase_identifier, array record, int dbase_record_number)


dbase_close($basa);//Закрываем таблицу



/* основные функции для работы с DBF-файлами

dbase_add_record -- Add a record to a dBase database
dbase_close -- Close a dBase database
dbase_create -- Creates a dBase database
dbase_delete_record -- Deletes a record from a dBase database
dbase_get_header_info -- Get the header info of a dBase database
dbase_get_record_with_names -- Gets a record from a dBase database as an associative array
dbase_get_record -- Gets a record from a dBase database
dbase_numfields -- Find out how many fields are in a dBase database
dbase_numrecords -- Find out how many records are in a dBase database
dbase_open -- Opens a dBase database
dbase_pack -- Packs a dBase database
dbase_replace_record -- Replace a record in a dBase database
*/

?>


Предполагаю сначала перевести гостевую, дальше каталог, форум, доску объявлений.

Готов выслушать Ваше мнение

Сообщение # 1 20.09.09 - 18:49:03

globusi

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

Уважаемый WR,
95 процентов людей кто использует Ваши скрипты, - они совершенно не разбираются в програмировании.
Поэтому Ваши готовые скрипты - так нужны им.
Вы пожалуйста выкладывайте новые скрипты, а
мы будет тестировать их работу.
(это у нас лучше получается).

Сообщение # 2 20.09.09 - 22:06:58

mmb

M
гость

Да лучше выложить готовый скрипт а его уже потестим

Сообщение # 3 21.09.09 - 00:06:29

Кузнец

К
гость


Цитата:

Уважаемый WR,95 процентов людей кто использует Ваши скрипты, - они совершенно не разбираются в програмировании. Поэтому Ваши готовые скрипты - так нужны им.Вы пожалуйста выкладывайте новые скрипты, амы будет тестировать их работу.(это у нас лучше получается).


Да, кстати, я обеими руками "за"!!!!!!!!!!!!!!

Сообщение # 4 21.09.09 - 00:12:28

mmb

M
гость

А чем Вам не нравятся txt и чем лучше база на DBF? Что мы выиграем от этого улучшения?

Сообщение # 5 21.09.09 - 02:40:37

Чайник

Ч
гость

Дорогой Михаил!
Простите, меня, старика, за прямоту.
Вы похожи на короля (правителя страны), который во время бунта в стране, надеясь на то, что отправив смутьянов на войну, избавится от них.
Такая война заведомо проигрышна.
С первым DBF-вирусом мне пришлось столкнуться 20 лет назад. Тогда были совсем иные программы, всё работало под DOS.
Но 20 лет не прошли даром. За это время семейство DBF-вирусов выросло в целый бандитский народ. Инструментов для вскрытия систем, использующих DBF-файлы появилась целая куча.
Как Вы собираетесь со всей этой шоблой бороться?
Ваше ПО форума лично меня и интересовало из-за отсутствия MySQL или другой базы, для которой готово оружие для поражения и из-за нестандартности ПО, под которое не было пока крак-инструмента (теперь по крайней мере у одного ублюдка есть, думаю, что у него хватило его зверо-куриных мозгов не разослать это всем).
Именно поэтому после перехода на DBF лично для меня полностью исчезнет интерес к Вашему ПО.

Сообщение # 6 23.09.09 - 12:09:09

WR

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

20 лет с компьютерами работаю, вируса, поражающего файл не видел.
Видел ошибочно сделанный код, позволяющий "уронить" базу данных.

Быстродействие моих скриптов резко замедляется при увеличении размера БД, а надёжная структура хранения данных позволит избежать проблему.

Так что не волнуйтесь, DBF - это удобно, просто, надёжно.

Сообщение # 7 23.09.09 - 14:28:25

sfinexer

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


Цитата:

Так что не волнуйтесь, DBF - это удобно, просто, надёжно.

А нехватка файлов, это я понимаю фича такая?
184 строка индексового
include "top.html"; // Подключаем нижний рекламный блок

А где фзять сам файл top.html ????

Прошлый раз, не было на форуме в архиве оформления. Впрочем это ты пониш, ч тебе о этом и сообщил.

Сообщение # 8 24.09.09 - 11:48:16

WR

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

top.html можно создать. Этот файл не является обязательным

Сейчас выложил новую версию гостевой. Туда файлы top.html и bottom.html включил

Сообщение # 9 24.09.09 - 14:32:55

sfinexer

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

267 268 строка
do {
$basa=dbase_open("base.dbf",2)

и 299
} while($whm < $whe);

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

Сообщение # 10 24.09.09 - 15:11:21

sfinexer

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

А вобще, вначале кода база открывается, в конце закрывается.

Сообщение # 11 24.09.09 - 15:11:55

sfinexer

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

первая строк
<?

Такое, заставляет скрипт делать дополнительные проверки, конечно разница во времени ничтожна.
НО!!!! эта отключается в конфиге php и код в таком виде работать НЕ БУДЕТ!!!
Для тех кто не верит, задайте в конфиге
short_open_tag = Off

И НИОДИН СКРИПТ АВТОРА WR НЕ БУДЕТ РАБОТАТЬ, ТАК КАК ЗАПИСЬ <? НАРУШАЕТ СТАНДАРТЫ PHP НО ЧТОБЫ ОНА РАБОТАЛА, В PHP ПРИДЕЛАН ПАТЧ который кстати, для повышения быстродействия можно отключать
Поэтому ни в одном нормлаьном коде <? не фигурирует

Сообщение # 12 24.09.09 - 15:16:50
РЕБЯТА - ТУТ ЖЕ ПОЛНО НОРМАЛЬНЫХ ПАРНЕЙ ИЛИ Я САМ? :Предыдущая темаСледующая тема: Все наши пароли в открытом доступе.
Страницы:  1  2  3  ... 6

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

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

Смайлы:

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