|
Бесплатные PHP скрипты - форум техподдержки |
Форум техподдержки WR-Скриптов на php. Обсуждаем: основы программирования на PHP 5 - 7 версий, различные подходы к написанию скриптов на php 7 без MySQL. А также WR-скрипты: бесплатные доски объявлений, скрипты форумов, Гостевые книги, Каталог ссылок, Галерея, Фотоальбом, Счётчики, Рассылки, Анекдот и другие. Принимаются пожелания для новых версий. Сообщите какой скрипт нужен для Вашего сайта, постараемся найти или реализовать. Скачать скрипты можно бесплатно. Вместе мы сделаем бесплатные php скрипты лучше и доступнее!
|
| Сегодня: 23.11.2024 - 14:06:46 Изменение структуры БД с txt на DBFОбъявление - WR-Scriptы в UTF-8 кодировке |
---|
Активно обновляю скрипты и перевожу их в UTF-8 кодировку. Список перекодированных php скриптов доступен на главной странице сайта. Скачивайте скрипты и устанавливайте на свой сайт! В ближайшее время обновлю каталог знакомств, форум Про, фотоальбом, доски объявлений лайт и ЛЮКС.
На форуме, пожалуйста, пишите что модернизировать в скриптах в первую очередь. Постараюсь исправить большую часть пожеланий! Планирую продолжить работы весь 2023 год.
|
Автор | Сообщение |
---|
WR •
W Участник форума
|
Привет всем. Начал эксперименты с DBF-файлами. Предлагаю обсудить перевод скриптов всей линейки WR на более надёжные, шустрые, удобные в модерировании и редактировании DBF-файлы.
Вот начал тестить, выкладываю тестовый php. В настоящий момент кажется очень удобно и практично. Код: <? $dbname = "base.dbf"; // "name" Бд
// ЕСЛИ ФАЙЛА БД НЕТ, то создаём файл по образцу // ГДЕ: $text="RN|$date&timeSTAMP|$name|$email|$msg1|$msg1|$msg2|$msg3|$msg4|$msg5|";
//Имеются следующие типы полей: //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 Участник форума
|
|
Сообщение # 12 |
24.09.09 - 15:16:50
| |
|