ria pc game
fle game engine - движок для создания игр
fle game engine - движок для создания игр


Balls and holes PC game / Balls and Holes PC игра
Вакансии
Игродельня
Сегодня
22 февраля 2019 22:03
Вход Регистрация Забыли пароль ?

Pencil Paper and the Ball PC Game review #91 - Как я придумываю историю
Pencil Paper and the Ball PC Game review #91 Как придумывается история Pencil Paper and the Ball Придумывание сюжета творческий процесс. Главное, чтобы он сам по себе тебя увлекал. Для этого есть множество способов. Вот некоторые из
подробнее...

Теги создание сайтов, создание игр, дизайн, игры, информатика, уроки photshop, php, c++, музыка, delphi, cms, робосайт
Статьи сайта
megainformatic - Костя Коробкин - СЕКРЕТНЫЙ ПРОЕКТ - интерактивный комикс (kk scp) - онлайн комикс - страница 3

megainformatic - Костя Коробкин - СЕКРЕТНЫЙ ПРОЕКТ - интерактивный комикс (kk scp) - онлайн комикс - страница 4

megainformatic - Костя Коробкин - СЕКРЕТНЫЙ ПРОЕКТ - интерактивный комикс (kk scp) - онлайн комикс - страница 5

megainformatic - Костя Коробкин - СЕКРЕТНЫЙ ПРОЕКТ - интерактивный комикс (kk scp) - онлайн комикс - страница 6

megainformatic - Костя Коробкин - СЕКРЕТНЫЙ ПРОЕКТ - интерактивный комикс (kk scp) - онлайн комикс - страница 7

megainformatic - Веселый Буквоежка - онлайн комикс - страница 1

megainformatic - Веселый Буквоежка - онлайн комикс - страница 2

megainformatic - Веселый Буквоежка - онлайн комикс - страница 3

megainformatic - Веселый Буквоежка - онлайн комикс - страница 4

megainformatic - Веселый Буквоежка - онлайн комикс - страница 5

megainformatic - Веселый Буквоежка - онлайн комикс - страница 6

megainformatic - Веселый Буквоежка - онлайн комикс - страница 7

megainformatic - Веселый Буквоежка - онлайн комикс - страница 8

megainformatic - Веселый Буквоежка - онлайн комикс - страница 9

megainformatic - Веселый Буквоежка - онлайн комикс - страница 10

megainformatic - Веселый Буквоежка - онлайн комикс - страница 11

megainformatic - Веселый Буквоежка - онлайн комикс - страница 12

megainformatic - Веселый Буквоежка - онлайн комикс - страница 13

megainformatic - Веселый Буквоежка - онлайн комикс - страница 14

megainformatic - Веселый Буквоежка - онлайн комикс - страница 15

megainformatic - Веселый Буквоежка - онлайн комикс - страница 16

megainformatic - Веселый Буквоежка - онлайн комикс - страница 17

megainformatic - Веселый Буквоежка - онлайн комикс - страница 18

megainformatic - Веселый Буквоежка - онлайн комикс - страница 19

megainformatic - Веселый Буквоежка - онлайн комикс - страница 20

megainformatic - Веселый Буквоежка - онлайн комикс - страница 21

megainformatic - Веселый Буквоежка - онлайн комикс - страница 22

megainformatic - Веселый Буквоежка - онлайн комикс - страница 23

megainformatic - Эмулятор ZX-Spectrum, БК-0010.01 и их работа в эмуляторе DosBox 0.74

megainformatic - Костя Коробкин - В гостях у тёти Светы (kk as) - онлайн комикс - страница 1

megainformatic - Костя Коробкин - В гостях у тёти Светы (kk as) - онлайн комикс - страница 2

megainformatic - Костя Коробкин - В гостях у тёти Светы (kk as) - онлайн комикс - страница 3

megainformatic - Костя Коробкин - В гостях у тёти Светы (kk as) - онлайн комикс - страница 4

megainformatic - Костя Коробкин - В гостях у тёти Светы (kk as) - онлайн комикс - страница 5

megainformatic - первый независимый онлайн-журнал комиксов ККК Костя Коробкин Комикс номер 1 март 2016

megainformatic - Костя Коробкин - В гостях у тёти Светы (kk as) - онлайн комикс - страница 6

megainformatic - Костя Коробкин - В гостях у тёти Светы (kk as) - онлайн комикс - страница 7

megainformatic - Эмулятор БК-0010.01 версия 2.6 для Windows 9x/Me/2000/XP автор Юрий Калмыков 2002 год

megainformatic - api получения готового решения для решения различных задач возникающих при создании сайта

megainformatic - Костя Коробкин - В гостях у тёти Светы (kk as) - онлайн комикс - страница 8

роман Eternity Вечность - автор Синицин Андрей megainformatic

роман Eternity Вечность - автор Синицин Андрей megainformatic - страница 2

роман Eternity Вечность - автор Синицин Андрей megainformatic - страница 3

роман Eternity Вечность - автор Синицин Андрей megainformatic - Windows Sockets 2, ping, Windows SDK 7, чем открыть hxs файл - страница 4

megainformatic - Размещение Вашей рекламы на нашем сайте

megainformatic - Костя Коробкин - В гостях у тёти Светы (kk as) - онлайн комикс - страница 9

megainformatic - Костя Коробкин - В гостях у тёти Светы (kk as) - онлайн комикс - страница 10

роман Eternity Вечность - автор Синицин Андрей megainformatic - В чём отличие в применении символов & и * в языке c++ ? также продолжаем изучать Windows Sockets 2 и пример simple - страница 5

megainformatic - Костя Коробкин - В гостях у тёти Светы часть 2 Живые машины (kk as) - онлайн комикс - страница 11

megainformatic - игра Шарики на лифте Серия 1 Разгони Лифт / Balls on Lift Level 1 Run The Lift версия 0.9.2 05.10.2016 / version 0.9.2 05.10.2016

megainformatic - Костя Коробкин - В гостях у тёти Светы часть 2 Живые машины (kk as) - онлайн комикс - страница 12

роман Eternity - страница 6 + решение по анимации закрывающихся дверей лифта

megainformatic - Сообщить об ошибке

Balls on Lift Table of Records / Шарики на лифте Таблица рекордов

megainformatic - Костя Коробкин - В гостях у тёти Светы часть 2 Живые машины (kk as) - онлайн комикс - страница 13

Balls on Lift / Шарики на лифте - Как создать игру - серия уроков - Рисуем шарик / How make the game - series of lessons - draw ball

подробнее

 

Система автоматизированной рассылки е-майл сообщений - megainformatic emailer

Вашему вниманию предлагается дополнительный модуль к megainformatic cms, который может поставляться и как самостоятельная система. Модуль emailer - представляет из себя набор php-скриптов, состоящий из админской части и пользовательской части в виде шаблона страницы.

Вы можете использовать EMAILER как многостраничный сайт или блог, наполняя его информацией. Можете добавлять пользователей в список рассылки или пользователи могут сами подписываться на вашу рассылку.

Основное удобство системы автоматизированной рассылки - это возможность отсылать автоматически копии писем по заданному шаблону пользователям из списка рассылки.

 
     
 

Список рассылки представляет из себя простую таблицу, включающую идентификатор пользователя, его имя и адрес e-mail.

Список рассылки хранится в базе данных mysql являющейся составной частью сайта и системы рассылки.

Пополнить список рассылки можно

- прямым добавлением пользователей из админки;

- путем импорта таблицы в формате CSV;

- путем самостоятельной подписки пользователя на вашу рассылку.

 
     
 

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

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

 
     
  И наконец после выполнения пробной рассылки, которая прошла успешно, можно приступить к выполнению реальной рассылки.  
     
  Добро пожаловать в megainformatic emailer !  
     
  Требования к системе - система может быть установлена на хостинге, поддерживающем php/my sql последних версий (5.2 или выше).  
     
 

Особенности системы:

- простота установки и использования;

- открытый исходный код;

- простой и понятный функционал, возможности расширения;

- встраиваемый, автономный или комбинированный варианты использования;

Вы можете использовать megainformatic emailer как самостоятельную систему управления, часть системы megainformatic cms или встроить/настроить систему для использования в составе других систем управления сайтами.

 
     
  Оценить возможности megainformatic emailer можно на примере функционирования данного сайта.  
     
   
     
     
     
     

 

подробнее


[к содержанию] [другие статьи Тимонина Андрея]

Хронология работы программы. Создаем Лог

автор: Тимонин Андрей

дата публикации на сайте Мега Информатик: 17.11.2012

Добро пожаловать в цикл моих уроков посвященных программированию.

Эта статья будет посвящена такому понятию как логи, как их создают и зачем используют.


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

Что из-себя представляет лог? Обычный текстовый файл с расширением log (оно может быть любое). Каждая строчка такого файла содержит штамп времени и некий текст. Это может быть строка ошибки или сообщение о том, что некий ресурс успешно загрузился. Смотрим пример лога:


08:43:32: Creating resource group General
08:43:32: Creating resource group Internal
08:43:32: Creating resource group Autodetect
08:43:32: SceneManagerFactory for type 'DefaultSceneManager' registered.
08:43:32: Registering ResourceManager for type Material
08:43:32: Registering ResourceManager for type Mesh

А теперь ближе к делу. Создадим простейший класс лога:

//log.h

#pragma once
#include <string>
#include <fstream>

class Log
{
protected:
std::ofstream mfpLog; //файловый поток
std::string mName;
public:
Log( const std::string& name); //Конструктор
~Log(); //деструктор
void logMessage(const std::string& message); ///для записи строки
};

А вот так будет выглядеть реализация класса

//log.cpp
#pragma once
#include "Log.h"
#include <time.h>
#include <iomanip>
Log::Log( const string& name )//конструктор
: mName(name)
{
mfpLog.open(name.c_str(),ios::out); //откроем файл лога
}
//-----------------------------------------------------------------------
Log::~Log()//деструктор
{
mfpLog.close(); //закроем файл лога
}
//-----------------------------------------------------------------------
void Log::logMessage( const string& message )
{ struct tm *pTime;
time_t ctTime;
//берем системное время
time(&ctTime);
//получим указатель на структуру времени
pTime = localtime( &ctTime );
//выведем в строку ширина 2 позиции заполнитель 0
mfpLog << std::setw(2) << std::setfill('0') << pTime->tm_hour
<< ":" << std::setw(2) << std::setfill('0') << pTime->tm_min
<< ":" << std::setw(2) << std::setfill('0') << pTime->tm_sec
<< ": " << message << std::endl;
}

Пример использования класса:

//где-то в недрах программы :)
Log mLog ("game.log");
//так пишем сообщения
mLog.logMessage("Ваше сообщение");

На этом статью заканчиваю. Надеюсь, эта информация была вам интересна.
C уважением, Андрей.

[к содержанию] [другие статьи Тимонина Андрея]

подробнее

Использование cron, crontab и планировщика задач

Доброго времени суток !

В данной статье я хочу поделиться с вами дорогие читатели, опытом использования ПЛАНИРОВЩИКА ЗАДАЧ (он же cron, он же crontab).

Во-первых, зачем нужен cron ?

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

Особенно бывает удобно выполнять php-скрипты, которые в заданный момент времени выполнят за Вас рассылку, уведомят пользователей о каких-то изменениях на сайте или отработают ряд нужных периодически выполняемых задач (например у меня на сайте используются cron-скрипты php, которые в заданное время выполняют обработку поступивших на сайт новых данных (сообщений от пользователей, внутренних ошибок, специальных логов и прочего).

Собственно, что нужно для того, чтобы Ваш php-скрипт начал выполняться без чьего-либо участия и в заданный момент времени ?

На вашем хостинге есть раздел, который может называться как Планировщик задач, cron или crontab.

По сути всё это - одно и то же.

Самое главное понять как правильно заставить Ваш планировщик задач работать с php-скриптами.

У меня в своё время были с этим трудности и сразу я не смог найти решение. Поэтому использовал так называемый обходной вариант - когда скрипт cron выполнялся при обращении к странице сайта.

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

Однако есть и ряд минусов - во-первых момент времени выполнения скрипта точно не известен и предугадать невозможно - когда пользователь обратится к вашему сайту, тогда и сработает скрипт cron.

Второй главный минус - возрастает нагрузка на сайт, т. к. требуется время на отслеживание и обработку задач cron-скрипта, вызываемого из скриптов сайта.

Скрипты запускаемые через cron напрямую лишены всех этих недостатков.

Они не нагружают сайт, выполняются в строго заданное время и самое главное - выполняются без чьего-либо участия.

Итак, что нужно, чтобы заставить Ваш php-скрипт выполняться по расписанию ?

Идём в раздел ПЛАНИРОВЩИК ЗАДАЧ вашего хостинга и там в зависимости от особенностей Вашего планировщика задач прописываем примерно такую строчку (для проверки работы скрипта по расписанию, сам код скрипта Вы найдёте здесь же - чуть ниже по тексту).

*/2 * * * *
/usr/local/bin/php /путь_к_скрипту_на_вашем_хостинге/my_cron.php

Если всё сделано правильно, то данный файл - my_cron.php, размещенный в указанной папке на вашем хостинге будет запускаться планировщиком задач и выполняться коммандным интерпретатором php (/usr/local/bin/php).

У меня в своё время была проблема с тем, что путь был указан некорректно, поэтому как я ни бился скрипт не выполнялся.

Чтобы убедиться что данный скрипт действительно будет выполняться каждые 2 минуты, вы можете записать в файл my_cron.php следующий код -

<?php

$my_email = ''; //здесь укажите свой действующий е-майл на котором сможете проверить отправленную вам данным скриптом почту

$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=windows-1251' . "\r\n";
$headers .= 'To: <'.$my_email.'>' . "\r\n";
$headers .= 'From:'.$my_email.'<'.$my_email.'>' . "\r\n";

mail($my_email, 'cron действительно работает !', 'cron действительно работает и это сообщение отправлено в '.date('r'), $headers);

?>
Предварительно проверьте ваш скрипт и убедитесь что он сам по себе работает и Вы не допустили никаких синтаксических или иных ошибок.

Скрипт должен отправлять письмо на указанный вами е-майл.

Далее, если задача, прописанная Вами в планировщике задач прописана правильно, то каждые 2 минуты Вы будете получать на Ваш электронный почтовый ящик письмо с указанием момента времени его отправки.

Если письмо действительно приходит Вам каждые 2 минуты и без вашего участия, значит УРА !!! Вы научились настраивать cron на своём хостинге и получили в своё распоряжение еще один достаточно МОЩНЫЙ инструмент в создании и развитии вашего сайта.

В завершение небольшое замечание.

Особенность скриптов выполняемых через планировщик задач состоит в том, что там нет смысла использовать echo, print и другие функции вывода, т. к. скрипт при всём желании не сможет выдать их Вам на экран, т. к. выполняется интерпретатором коммандной строки.

Максимум, что он сможет сделать - это отправить их Вам по е-майл (эта возможность входит в функции самого планировщика задач и отсылает выдачу либо на е-майл, который принят на вашем хостинге по-умолчанию, либо если указать параметр MAILTO= и указать на какую почту должен планировщик задач отсылать результаты выдачи скрипта.

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

При работе с файлами в самом начале вашего скрипта php, запускаемого через cron в интерпретаторе php для коммандной строки, удобно указать строчку -

chdir( dirname( __FILE__ ) );

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

Вот вообщем-то и всё, что я хотел сообщить Вам в этой статье.

Надеюсь она была Вам полезна.

Удачи Вам на ниве сайтостроя или в той области знаний, в которой Вы работаете !!!

подробнее

     
  [Все уроки 3ds max] [Галерея моделей] [назад] [далее]  
     
  Подготовка модели к использованию скелетной анимации  
     
 

Подготовка модели к использованию скелетной анимации включает следующие шаги -

1) создание и текстурирование модели

2) создание скелета для данной модели

3) привязка скелета к текстурированному мешу (Skinned Mesh) при помощи модификатора Skin и настройка степени влияния костей на вершины модели

4) создание анимации

5) экспорт модели в нужный формат (в нашем случае - X).

 
Если Вы новичок в создании и текстурировании моделей в 3Ds Max, то отправляем Вас изучать базовые уроки посвяшенные 3Ds Max. А пока не вдаваясь в подробности моделирования и текстурирования персонажа можете сразу загрузить себе готовые модель и текстуру - nn (108 Кб). Замечание: все предоставленные модели в формате 3ds max 7.0! Это значит что в более ранних версиях (6, 5 и ниже) они открываться не будут!!!
 
модель Fedja (108 Кб)
 
Откройте модель из 3Ds Max 7 (или выше). Если модель появилась в сцене без текстуры, то это объясняется просто - 3Ds Max сохраняет абсолютные пути к файлам текстур. Значит Вам нужно исправить этот путь, т.к. в Вашей системе он естественно иной.
 
Проблема решается следующим образом - откройте редактор материалов Rendering > Material Editor и в открывшемся окне в группе Blinn Basic Parameters напротив цвета Diffuse нажмите кнопочку M (на рисунке обведено красным кружком!)
 
открытие свойств рассеянного света материала в редакторе материалов 3Ds Max7
[изображение "открытие свойств рассеянного света материала в редакторе материалов 3Ds Max7"]
 
В открывшемся окне свойств диффузного цвета в группе Bitmap parameters нажмите кнопку напротив пункта Bitmap и укажите корректный путь к текстуре в вашей системе -
 
коррекция пути к файлу текстуры
[изображение "коррекция пути к файлу текстуры"]
 
выбор файла текстуры для формирования корректного пути к нему в вашей системе
 
Если после этих манипуляций изображение текстуры так и не появилось на поверхности модели, значит оно просто не отображается или не применено. Исправим это.
 
Снова откройте редактор материалов (см. изображение "коррекция пути к файлу текстуры" выше). В поле Diffuse Color из выпадающего списка выберите название материала orig_fedja
 
переход к свойствам материала orig_fedja
 
Это вернет Вас к окну свойств материала orig_fedja в целом (см. изображение "открытие свойств рассеянного света материала в редакторе материалов 3Ds Max7" ).
 
Нажмите кнопку Show Map in Viewport -
 
отображение материала в окне вида
 
И если это не решило проблему - перетащите материал из своего слота в редакторе материалов на изображение модели в окне вида (Viewport) -
 
применение созданного обновленного материала к модели
 

Эту операцию придется повторить для всех объектов из которых состоит модель.

Все эти манипуляции должны привести к появлению изображения текстуры на поверхности модели. Теперь Вы понимаете как важно использовать для файлов текстур относительные, а не абсолютные пути! Особенно это касается файлов в формате X. О том как скорректировать путь к файлу текстуры в готовом Х файле текстового вида можно прочитать в статье - Погружение в глубины DirectX8, 9

 
Теперь приступим к коррекции модели для целей экспорта в формат X. Выберите все объекты модели в сцене, сгруппируйте их в одну группу Group > Group и выбрав инструмент Select and Move задайте нулевые значения положения модели относително центра мировой системы координат (world coordinate system) - X =0,0; Y = 0,0; Z=0,0
 
расположение модели в центре мировой системы координат
 
Эта особенность является важной, т.к. любые смещения относительно центра будут неизбежно приводить к некорректному расположению модели в игровых сценах - она всегда будет смещена.
 
Коррекция масштаба изображения - пока модель сгруппирована можете сразу же отмасштабировать ее до нужных размеров. Это будет необходимо, т.к. приложение SkinnedMesh рассчитано на другой масштаб модели или придется масштабировать модель уже в коде - программным путем. В нашем случае модель уже не нуждается в масштабировании, т.к. размеры были подогнаны, но для пробы можете все же сделать это.
 
Экспортируйте модель в формат X при помощи любого из экспортеров которые были описаны выше.
 
Проверьте результат экспорта в любой из утилит для просмотра мешей или в приложении SkinnedMesh.
 
Это были предварительные шаги для подготовки Вас и Вашей модели к использованию концепции скелетной анимации.
 
Следующий этап - 2 - это создание скелета для модели.
 
Скелет - это набор вспомогательных моделей образующих иерархию. Скелет состоит из костей (Bones). Кости будут в дальнейшем влиять на положение связанных с ними вершин текстурированной модели (Skinned Mesh).
 
Скелет относится к вспомогательным объектам и поэтому в игровой сцене он будет невидим, поэтому его необходимо расположить внутри модели персонажа. И хотя кости скелета относятся к отрисовываемым (rendered) объектам - их можно выводить на rendering в 3ds max, в игровых сценах и приложениях они отрисовываться не будут! Таким образом скелет в виде видимой модели нужен только на этапе его разработки и создания анимации.
 
В игровом приложении скелет отрисовываться не будет, а будет лишь воздействовать своими матрицами трансформации на трансформацию связанных с ним вершин модели персонажа.
 
Поскольку мы сейчас будем внедрять скелет внутрь тела персонажа нам нужно чтобы он был виден, но и не мешал создавать и/или выбирать отдельные кости. Для этого давайте"заморозим" модель и сделаем "сквозной" вид обзора (See-Through).
 
Выделите модель (или все ее составляющие объекты если Вы ее разгруппировали).
 
Щелкните правой кнопкой по модели и выберите пункт меню Properties, в группе Display Properties установите флажок See-Through. Нажмите ОК. При этом модель (все выделенные объекты) станут полупрозрачного серого цвета.
 
установка "сквозного" вида модели
 
Снова щелкните правой кнопкой и выберите Freeze Selection. Это приведет к "заморозке". Для разморозки используйте Unfreeze. Для восстановления нормального вида убирайте флажок See-Through.
 
Теперь когда модель видна, но недоступна для выбора нам ничто не будет мешать и мы свободно можем создавать скелет и размещать его внутри модели.
 
Выберите пункт меню Character > Bone Tools. Перед вами откроется панель создания костей скелета -
 
панель создания костей скелета
 
Отдельные кости мы будем формировать в разных плоскостях, поэтому Вам нужно будет для их размещения включать соответствующий вид - фронтальный (Front), боковой слева или справа (Left, Right) и т.д.
 
Для этого воспользуйтесь кнопкой Maximize Vieport Toggle в нижнем правом углу окна 3ds max -
 
c последующим выбором окна соответствующей проекции и его максимизацией/минимизацией этой же кнопкой.
 
Создадим кости для левой руки. Выполнять это будем в окне фронтальной проекции (Front viewport - см. рис. выше).
 
Левая рука персонажа будет соответствовать правой стороне на экране (потому что с точки зрения персонажа его левая рука, а с вашей точки зрения она расположена в правой части экрана). Т.е. мысленно поставьте себя спиной к персонажу, тогда поймете о чем я говорю.
 
Нажав кнопку Create Bones и щелкая мышью постройте 4 кости идущие от плеча к кисти как показано на рисунке. В конце щелкните правой кнопкой. Пятая концевая кость носит вспомогательный характер и должна выходить за пределы руки персонажа (как и показано на рисунке). Она будет служить концевой точкой прикрепления Анимационного инструмента инверсной кинематики (IK Solver - HI Solver).
 
 
 
[назад] [далее]
 
     
  [Все уроки 3ds max] [Галерея моделей]  
     
     
     
     
     
 

Конструируем свой сайт - полезные статьи для начинающих строителей сайтов.

Мы рассмотрим как создать простейший счетчик посетителей и задействовать при этом использование баз данных MySQL. Этим самым мы постараемся как говориться "убить сразу двух зайцев" - освоить начальные сведения по PHP и разобраться с тем, как работать с базами данных MySQL из кода на PHP.

 
     
 

В этой статье я кратко опишу принцип работы с базами данных MySQL.

В первую очередь что нужно иметь под рукой:

1) набор Web разработчика denver - этот набор включает все необходимые Вам программы для отладки и разработки Вашего сайта, включая PHP, MySQL, Apache, PERL, PostgreSQL;

2) и конечно же Вам понадобится какой-либо удобный html-редактор, например неплохим выбором является Macromedia Dreamweaver;

 
     
  После того, как Вы скачаете всё необходимое на свой ПК, нужно установить эти программы и начать работу.  
     
 

Если пакет denver корректно установлен в Вашей системе, то при вызове браузера Internet Explorer и наборе в его адресной строке ссылки

http://localhost/

 
     
  Вы будете попадать на заглавную страницу denver'а.  
     
 

Чтобы создать новую базу данных нужно выбрать на открытой странице пункт [Заведение новых БД и пользователей MySQL], либо в адресной строке браузера набрать ссылку и выполнить переход по ней -

http://localhost/denwer/Tools/addmuser/index.php

 
     
 

Для чего нужны базы данных ? Чтобы накапливать какую-либо информацию, а затем выдавать её в зависимости от различных запросов к базе данных.

Для работы сайтов удобными являются базы данных MySQL. К тому же, в языке PHP также разработанном для целей сайтостроения, реализованы все возможности работы с такими базами данных.

Аббревиатура SQL означает не что иное как Structured Query Language - Язык Структурированных Запросов. Иными словами это специальный язык, при помощи которого, можно обращаться к базам данных для целей их создания, изменения и извлечения из них необходимых данных.

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

Пароль администратора MySQL

это поле оставляем пустым

Имя базы данных

counterdb

Логин пользователя

можно ввести то же имя,

counterdb

а можно другое, например

admin

Пароль

тут уж вводите всё, что угодно, но желательно использовать латинские буквы и цифры, другие символы и спецсимволы использовать нельзя!

например -

Ji7yVasb2

...еще раз:

повторяем ввод пароля для проверки

Ji7yVasb2

 
     
  Жмём кнопку Создать БД и пользователя  
     
  Введенные данные еще запишите отдельно, т. к. они Вам потребуются в коде php, который Вы будете использоваться для обращения к базе данных.  
     
 

Теперь нужно создать структуру будущей базы данных.

Для этого вернитесь на главную страничку денвера, либо используйте в адресной строке следующий путь -

http://localhost/Tools/phpmyadmin/index.php

 
     
  В открывшейся страничке нажимаем кнопку Databases и в открывшейся таблице выбираем нужную.  
     
 

Создаем новую таблицу для базы данных -

Create new table on database

в поле Name

вводим имя таблицы, например

visitors

в поле Number of fields

количество полей (столбцов) таблицы, например,

3

 
     
  Жмём кнопку Go  
     
 

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

Мы создаем простейшую базу данных, для целей подсчета посетителей на сайте.

Всего у нас будет три поля:

currentday

total

today

Для всех этих полей используем тип INT

По своему желанию можете добавить еще какую-либо информацию, например заполнить поля comment

 
     
 

далее Жмём кнопку Save внизу страницы

Наша база данных создана!

 
     
  После успешного создания новой таблицы в базе данных Вам будет показан вид SQL запроса, который был использован для создания таблицы в этой базе данных.  
     
  Далее мы напишем код, на PHP который будет отображать счётчик посетителей сайта и заносить данные в созданную базу данных.  
     
 

Запускаем Ваш html-редактор, создаем новый пустой html-документ, заполняем его следующим кодом -

<HTML>
<HEAD>
<TITLE>db</TITLE>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=windows-1251">
</HEAD>
<BODY BGCOLOR=#FFFFFF LEFTMARGIN=0 TOPMARGIN=0 MARGINWIDTH=0 MARGINHEIGHT=0>
<?php
if ($rc = mysql_connect("127.0.0.1", "
admin", "Ji7yVasb2"))
{
$day = date("Y-m-d");

mysql_select_db("counterdb");
$table = "visitors";

$s = mysql_query("SELECT * FROM $table");

$a = mysql_fetch_array($s);



$a[total] = $a[total] + 1;



if ($day !==$a[currentday])
{
$a[currentday]=$day;
$a[today]=1;

}
else {
$a[today] = $a[today]+1;
}


mysql_query("UPDATE visitors SET total = '$a[total]', today = '$a[today]', currentday = '$a[currentday]'");

echo "<table border=1 bordercolor=green><tr>
<td colspan=1 align=center>посетителей</td></tr>
<tr><td align=center>всего</td><td align=center>сегодня</td></tr>
<tr><td align=center>$a[total]</td>
<td align=center>$a[today] </td></tr></table>";
}
else {
echo "Error!";
}

?>
</BODY>
</HTML>

 
     
 

Сохраняем созданный документ в формате php в папку

C:\WebServers\home\localhost\www\mysite

 
     
 

Т. е. предполагается, что denver Вы установили в папку C:\WebServers

а затем перешли в подпапку

C:\WebServers\home\localhost\www

и там создали свою рабочую папку mysite

 
     
  Чтобы проверить как работает наш счётчик вводим в адресной строке браузера следующую ссылку -  
     
  http://localhost/mysite/counter.php  
     
  Здесь предполагается, что Вы назвали документ содержащий php-код для реализации счетчика counter.php  
     
  Если выполнять многократные переходы по данной ссылке путём повторного ввода адреса в строке браузера, либо обновляя страницу, то данные счётчика выводимые на созданной странице будут изменяться.  
     
 

В случае если при работе кода возникли ошибки Вы получите сообщение с указанием номера строки, в которой произошла ошибка.

Вам нужно проверить правильность написания всех имен, параметров, символов и идентификаторов.

То же происходит если код работает неверно - например счетчик не изменяется, оставаясь постоянно на значении 1/1.

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

Решение - очень внимательно проверить весь код от самой первой до самой последней буковки !!!

 
     
  В следующей нашей статье мы рассмотрим как добавить созданный счетчик на все страницы Вашего сайта  
     
megainformatic live chat
Начать беседу
X
 

Оставленные комментарии



fle game engine - движок для создания игр
fle game engine - движок для создания игр


Something: Unexplained 2 captive of desires / Нечто: Необъяснимое 2 в плену желаний
Костя Коробкин Комикс Коллекционное издание - 6 комиксов, 81 страница, 220 mp3 треков
megainformatic Размещение баннерной рекламы у нас
Время загрузки: 1,1485