Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Счетчик
 
 автор: Полина   (06.08.2007 в 17:08)   письмо автору
 
 

Я собираюсь писать счетчик для сайта. Я так поняла что делать это нужн с помощью php.
Как именно работает счетчик какой алгоритм программы?

И еще маленький вопрос. Я прочитала что код php встраивается в html-код. Тогда почему расширением файла является *.php?

   
 
 автор: amigo62   (06.08.2007 в 21:28)   письмо автору
 
   для: Полина   (06.08.2007 в 17:08)
 

Потому что файл рнр- это программа, выполняемая сервером. Если сервер "видит" расширение html, он ни чего не выполняет а отдает в браузер как есть. Вам нужен именно АЛГОРИТМ (последовательность операций) или ГОТОВЫЙ код?

   
 
 автор: WebTech   (06.08.2007 в 21:41)   письмо автору
 
   для: amigo62   (06.08.2007 в 21:28)
 

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

   
 
 автор: Полина   (06.08.2007 в 21:57)   письмо автору
 
   для: WebTech   (06.08.2007 в 21:41)
 

Ага, т.е. если например создать файлы в формате php а затем в html документ подключить эти файлы то вся информация копируется в html текст. ну как в Си.
А документы формата php нужно создавать как обычные текстовые а затем менять расширение?

   
 
 автор: Полина   (06.08.2007 в 21:49)   письмо автору
 
   для: amigo62   (06.08.2007 в 21:28)
 

Ну вообще то мне нужно самой написать такую штуку. Поэтому наверно алгоритм.
Я скачала готовый счетчик с этого сайта. Посмотрела и не поняла вообще что это. Кучка файлов формата РНР. Потом требуется создать какую то таблицу...
Я в html,javascript вроде ориентируюсь а здесь никак не пойму с чего начать.

   
 
 автор: sim5   (06.08.2007 в 21:55)   письмо автору
 
   для: Полина   (06.08.2007 в 21:49)
 

Если вы говорите о PowerCounter - то это статистика: посещаемость, браузеры посетителей, запросы и т.д., а не просто счетчик. Для его работы необходима база данных. Следуйте инструкции по установке счетчика.

   
 
 автор: Полина   (06.08.2007 в 21:59)   письмо автору
 
   для: sim5   (06.08.2007 в 21:55)
 

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

   
 
 автор: sim5   (06.08.2007 в 22:11)   письмо автору
 
   для: Полина   (06.08.2007 в 21:59)
 

Ну если вам нужен счетчик статистики подобный PowerCounter - то чем он вам не учебник?

   
 
 автор: Полина   (06.08.2007 в 22:15)   письмо автору
 
   для: sim5   (06.08.2007 в 22:11)
 

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

   
 
 автор: sim5   (06.08.2007 в 22:20)   письмо автору
 
   для: Полина   (06.08.2007 в 22:15)
 

Как понять "неоткрываемых"? У вас что не устновлен на локальной машине Apache, PHP, MySQL? Если установлен, то подключите счетчик к своему проекту (в инструкции указано как это сделать), приготовьте базу и...
Судя же по вашим постам выше - может вам с более простого начать?

   
 
 автор: Полина   (06.08.2007 в 22:29)   письмо автору
 
   для: sim5   (06.08.2007 в 22:20)
 

Ну скорее всего да. У меня задание на лето написать счетчик. Просто мне хотелось читать изучая сразу прикидывать что для него потребуется.
А установлен или нет не знаю.) А как это проверить?

   
 
 автор: sim5   (06.08.2007 в 22:38)   письмо автору
 
   для: Полина   (06.08.2007 в 22:29)
 

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

   
 
 автор: Полина   (07.08.2007 в 17:36)   письмо автору
 
   для: sim5   (06.08.2007 в 22:38)
 

Я Денвер нашла, но устанавливать не стала. Там зачем то требуется создать какой то диск Z. Меня пугают предложения подобного плана. Зачем нужен этот диск? И еще пока искала что-нибудь про установку php там что-то еще было про Апач. его тоже нужно устанавливать? И после того как я все это сделаю мне спокойно можно начинать в html документе учиться программировать ан php и все заработает?

   
 
 автор: coloboc66   (07.08.2007 в 17:43)   письмо автору
 
   для: Полина   (07.08.2007 в 17:36)
 

Всё правильно - Z - это виртуальный диск. Так задуман Денвер. Апач отдельно качать и устанавливать не надо, он находится в составе Денвера. Сам по себе код чистого счётчика очень маленький и несложный. Просто под рукой не имею.

   
 
 автор: Полина   (07.08.2007 в 17:47)   письмо автору
 
   для: coloboc66   (07.08.2007 в 17:43)
 

А зачем он нужен? Из каких соображений?

   
 
 автор: coloboc66   (07.08.2007 в 17:49)   письмо автору
 
   для: Полина   (07.08.2007 в 17:47)
 

Кто?

   
 
 автор: Полина   (07.08.2007 в 17:50)   письмо автору
 
   для: coloboc66   (07.08.2007 в 17:49)
 

Виртуальный диск.

   
 
 автор: coloboc66   (07.08.2007 в 17:53)   письмо автору
 
   для: Полина   (07.08.2007 в 17:50)
 

А там чем-то из спецификации Unix - подобных систем объясняется, кажется, точно не помню. Но с ним очень удобно работать получается. У меня Денвер стоит и я им доволен.

   
 
 автор: sim5   (07.08.2007 в 17:53)   письмо автору
 
   для: Полина   (07.08.2007 в 17:47)
 

Кто - диск Z? Это виртуальный диск который будет отображать папку, в которую будт установлен вами Денвер. Так Денверу "проще будет", можете так считать и не беспокоиться об этом :)

PS. Синхронно однако :)))

   
 
 автор: Полина   (07.08.2007 в 18:01)   письмо автору
 
   для: sim5   (07.08.2007 в 17:53)
 

Ну а если я потом захочу удалить Денвер то у меня это диск тоже исчезнет? Ну ладно, бог с ним.

Раскажите пожалуйста лучше про алгоритм. Т.е. как именно он работает этот счетчик? Какие данные использует и как их обрабатывает. И как после всех обработок получается картинка с количеством посетителей? Мне вот это нужно. Чтобы иметь представление как оно все происходит.
Помогите пожалуйста!

   
 
 автор: sim5   (07.08.2007 в 18:18)   письмо автору
 
   для: Полина   (07.08.2007 в 18:01)
 

Этот диск открывается с помощью ярлыка Create virtual Drive, помещенного в Автозагрузку. При деинсталляции Денвера его кончно не будет, и виртуальный диск создаваться не будет. Совет: сохраняйте вашу папку с установкой Денвера и вашими разработкми на флеш, либо еще куда. Вы потом всегда можете скопировать ваш Денвер куда угодно, либо вообще запускать с флешки и ратотать с проектом - повторной инсталляции не потребуется.

Что касается счетчика. Вы говорите, что только начинаете, навряд ли тогда вам под силу будет разобраться с PowerCounter. Может вам просто найти готовый простой скрипт счетчика посещений, и разобраться с его кодом? Начните с простого, просто учет посещений страницы за день, месяц... Не знаю рассматривались ли такие вопросы на форуме, но думаю в сети есть готовые скрипты подобных счетчиков. Найдите такой и разберите его работу, это и будет вам наглядным уроком. НО... Вы ведь не знаете РНР, как же вы разбирать и писать код будете? Надо же хоть малость с ним ознакомиться, хотя бы для приличия :)

   
 
 автор: Полина   (08.08.2007 в 22:40)   письмо автору
 
   для: sim5   (07.08.2007 в 18:18)
 

Хорошо.) Я обязательно буду разбираться.) Спасибо большое!

   
 
 автор: Полина   (08.08.2007 в 23:33)   письмо автору
 
   для: Полина   (08.08.2007 в 22:40)
 

Ну а толку что я установила Денвер?! У меня не открывается ни один файл с расширением PHP!!! Я конечно что-то не понимаю, но как же это делается? Может он и не должен открываться?!

   
 
 автор: Trianon   (09.08.2007 в 00:41)   письмо автору
 
   для: Полина   (08.08.2007 в 23:33)
 

Файлы с расширением .php сами по себе открываются только двумя программами - php-редактором (если Вы его сами установили в системе и пытаетесь открыть конкретный файл на диске) и сервером apache, точнее его php-модулем. Последнее происходит, если вы пытаетесь в браузере открыть соответствующий html-документ, например: http://localhost/myscrupt.php

   
 
 автор: sim5   (09.08.2007 в 05:27)   письмо автору
 
   для: Полина   (06.08.2007 в 17:08)
 

Только без паники Полина, только без паники! Главное, что после установки Денвера, вы не пострадали, остальное приложится.
Trianon уже сказал как запускаются php-сценарии - при запущенном сервере Apache и PHP, но сервер Apache не запускается автоматически при запуске Windows! Автоматически создается только виртуальный диск, с которым будет работать Apache. Вам уже говорили, что этот диск просто отражает на себя папку установленного сервера. По умолчанию это папка c:\webservers, вроде бы так, виртуальный диск (по умолчанию Z) и будет отражать эту папку. Вы можете окрывать редактором файлы скриптов, для редактирования, либо с папки установки сервера, либо с виртуального диска - изменения будут проходить и там, и там (физически это одна и та же папка).
Установив Денвер, можно запустить его. Делается это ярлыком Start servers, который у вас был создан при установке Денвера, при этом в Панели задач появится его ярлык - "перышко". Ярлык Restart servers служит для перезапуска сервера, что вы должны будете делать, если внесли изменения в настройки PHP, например. Ярлык Stop servers останавливает сервер, соответсвенно. Для проверки работы сервера есть уже готовые скрипты, вы можете прочитать это в инструкции Денвера.
Допустим вы это сделали. Сделайте следующее, до запуска сервера, откройте папку z:\home (или c:\webserver\home, но лучше на z - проще), и создайте в этой папке папку вашего будующего проекта, например: myfolder. Теперь в этой папке создайте папку www. В итоге у вас получится так: z:\home\myfolder\www. Теперь откройте ваш php-редактор (можно и блокнот) и напишите свой первый php-скрипт:


<?php
echo "Привет Полина!";
?>


и сохраните это в созданную вами папку с именем index.php. Вот теперь ярлыком старта запустите сервер. Наберите в адресной строке браузера http://www.myfolder/index.php и Enter... Если вас поприветсвуют, то все ОК, сохраните этот адрес в избранном - теперь это ваш проект.
Далее вам уже нужно будет знакомиться с РНР - мануал, учебник и т.п.. Форум вам в помощь!

   
 
 автор: Полина   (09.08.2007 в 11:35)   письмо автору
 
   для: sim5   (09.08.2007 в 05:27)
 

"Перышки" у меня вчера уже были. Это все получилось.)
Только вот кое что все равно не понятно. Диск z у меня не создался. Т.е. в моем понимании это должен был создаться такой же полноценный диск как например c,d и e. Но такого нет.((!!
Даже когда вводишь z:\home выдает сообщение что такого нет. Зато через d:\webservers\home открывается все нормально.
Все было бы ничего но остается последний вопрос. Вот у меня стоит Windows Xp. В нем расширения текстовых документов не выдается. Как его поменять на другое расширение. Я полгода назад как бы изучала html и както с этим справлялась. Но как убей не помню. Что скажете?

   
 
 автор: Полина   (09.08.2007 в 12:19)   письмо автору
 
   для: Полина   (09.08.2007 в 11:35)
 

Все диск Z нашелся!) Я просто забыла запустить Денвер.) Осталось только узнать как расширения менять?)

   
 
 автор: sim5   (09.08.2007 в 12:55)   письмо автору
 
   для: Полина   (09.08.2007 в 12:19)
 

Виртуальный диск создается отдельно от запуска самого Денвера, при запуске Windows.

   
 
 автор: Trianon   (09.08.2007 в 19:42)   письмо автору
 
   для: Полина   (09.08.2007 в 11:35)
 

>Вот у меня стоит Windows Xp. В нем расширения текстовых документов не выдается.

Проводник - Главное меню
Сервис / Свойства папки / Вид /
снять флажок с - Скрывать расширения зарегистрированных типов файлов
Применить
Можно отображать все папки в одинаровом виде - как у текущей папки - применить.

И никогда его больше не [позволять] ставить.

   
 
 автор: Полина   (09.08.2007 в 19:59)   письмо автору
 
   для: Trianon   (09.08.2007 в 19:42)
 

В смысле Windows XP?) А что ставить?)

   
 
 автор: Trianon :)   (10.08.2007 в 01:21)
 
   для: Полина   (09.08.2007 в 19:59)
 

флажок :)))

   
 
 автор: mihdan   (09.08.2007 в 11:44)   письмо автору
 
   для: Полина   (06.08.2007 в 17:08)
 

Смотри тут

   
 
 автор: Полина   (09.08.2007 в 11:49)   письмо автору
 
   для: mihdan   (09.08.2007 в 11:44)
 

тут я уже смотрела. Непомогает.)

   
 
 автор: sim5   (09.08.2007 в 12:37)   письмо автору
 
   для: Полина   (09.08.2007 в 11:49)
 

Виртуальный диск
Виртуальный диск запускается только при старте Widows и то только в том случае, если вы при инсталляции выбрали вариант 1 создания виртуального диска. Зайдите в Программы -> Автозагрузка, посмотрите - там должен быть ярлык Create virtual drive, это и есть запуск создания виртуального диска. Если этого ярлыка у вас нет, то откройте папку установленного сервера:
C:\WebServers\etc\utils\
Найдите в этой папке файл Boot.exe, щелкните на нем правой кнопкой и не отпуская ее перетащите на Программы -> Автозагрузка, отпустите кнопку и выберите Создать ярлыки. У вас будет создан ярлык, и при запуске Windows будет создаваться виртуальный диск. Если вы при установке указали диск по умолчанию, то это будет диск Z. Проверьте это все, проверьте создание виртуального диска.
Для того чтобы вы видели расширения файлов в Widows, в Проводнике выберите Сервис -> Свойства папки. В Свойствах папки выберите закладку Вид, снимите галочку "Скрывать расширения для зарегестрированных типов файлов" и нажмите ОК. Теперь вы будете видеть расширения файлов.

Сервер
Сразу разграничте термины открывать файл и запускать файл РНР, потому как открывать его вы будете в редакторе для его редактирования:

C:\WebServers\home\имя папки вашего пректа\www\ваш файл.php

А вот запускать его (работа скрипта в вашем файле) вы будете уже браузером, и не с диска, а через протокол:

http://www.имя папки вашего пректа/ваш файл.php

Установленный Денвер имитирует на вашем локальном компьютере удаленный сетевой сервер. Запомните! Все свои проекты помещайте в папку home, с обязательной подпапкой www, как приводилось ранее. При запуске Денвера, он автоматически подключит ваш проект как новый домен.

Редактор
Все ваши РНР-скрипты вы должны сохранять с расширением .php, хотя и html-файлы могут содержать в себе php-сценарии. Вам нужен РНР-редактор, с подсветкой кода желательно. Их много, есть с русским интерфейсом, например, PHP Edit, HtmlPad FisherMan... Установите редактор и начинайте работать - с изучения РНР.

   
 
 автор: coloboc66   (09.08.2007 в 12:57)   письмо автору
 
   для: sim5   (09.08.2007 в 12:37)
 

Да можно код и в Блокноте писать. На первое время спец. редактор не нужен.

   
 
 автор: sim5   (09.08.2007 в 13:09)   письмо автору
 
   для: coloboc66   (09.08.2007 в 12:57)
 

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

   
 
 автор: Полина   (09.08.2007 в 16:00)   письмо автору
 
   для: sim5   (09.08.2007 в 13:09)
 

У меня все заработало! Класс!!! Спасибо вам! Вы такие молодцы!!! просто супер!))

   
 
 автор: Полина   (09.08.2007 в 16:00)   письмо автору
 
   для: sim5   (09.08.2007 в 13:09)
 

У меня все заработало! Класс!!! Спасибо вам! Вы такие молодцы!!! просто супер!))

   
 
 автор: Futurer   (09.08.2007 в 19:16)   письмо автору
 
   для: Полина   (09.08.2007 в 16:00)
 

Нужно начинать с простых примеров.

   
 
 автор: coloboc66   (09.08.2007 в 21:50)   письмо автору
 
   для: Futurer   (09.08.2007 в 19:16)
 

Вот код простого счётчика из учебника, но он не работает чего-то... Наверное, что-то с правами доступа к файлу.

<?
echo "Посетителей страницы: - ";
$filename="counter.dat";
$fp=fopen($filename,"r");
if(
$fp)
{
$counter=fgets($fp,10);
fclose($fp);
}
else
{
$counter=0;
$counter++;
echo 
$counter;
$fp=fopen($filename,"w");
if(
$fp)
{
$counter=fputs($fp,$counter);
fclose($fp);
}
}
?>

   
 
 автор: Полина   (10.08.2007 в 10:56)   письмо автору
 
   для: coloboc66   (09.08.2007 в 21:50)
 

Т.е. существует какой то файл с именем counter.dat? А что он содержит? Откуда берется?

   
 
 автор: coloboc66   (10.08.2007 в 12:20)   письмо автору
 
   для: Полина   (10.08.2007 в 10:56)
 

Это текстовый файл, он создаётся в директории скрипта автоматически. В него заносится число посещений.

   
 
 автор: Trianon   (10.08.2007 в 11:08)   письмо автору
 
   для: coloboc66   (09.08.2007 в 21:50)
 

$counter++; не в той ветви стоит.

<? 
echo "Посетителей страницы: - "
$filename="counter.dat"
$fp=fopen($filename,"r"); 
if(
$fp

$counter=fgets($fp,10); 
fclose($fp); 

else 
$counter=0
$counter++; 
echo 
$counter
$fp=fopen($filename,"w"); 
if(
$fp

$counter=fputs($fp,$counter); 
fclose($fp); 

?> 

   
 
 автор: coloboc66   (10.08.2007 в 12:32)   письмо автору
 
   для: Trianon   (10.08.2007 в 11:08)
 

Спасибо Трианону за поправку. Попытаюсь прокомментировать код:

<?  
echo "Посетителей страницы: - ";  
$filename="counter.dat";  //Указываем имя файла 
$fp=fopen($filename,"r");  //Пытаемся этот файл открыть по чтению
if($fp)  //Если открыли
{  
$counter=fgets($fp,10);  // Достаём оттуда записи
fclose($fp);  // И закрываем его
}  
else 
$counter=0;  //Если файл не открылся (т.е. он ещё не создан), объявляем переменную и присваиваем ей значение 0
$counter++;  // Увеличиваем это значение на 1
echo $counter;  // Выводим это значение на страницу
$fp=fopen($filename,"w");  // Открываем файл по записи
if($fp)  // Если открыли
{  
$counter=fputs($fp,$counter);  // Записываем в него значение переменной $counter
fclose($fp);  // Закрываем файл
}  
?>  

   
 
 автор: Полина   (12.08.2007 в 15:41)   письмо автору
 
   для: coloboc66   (10.08.2007 в 12:32)
 

Супер. Спасибо! А почему файл нужно создавать с раширением dat Почему какой нибудь txt не прокатит? Мы когда Си изучали все время с текстовыми че-то колдовали. Че то записывали туда тоже.)

   
 
 автор: coloboc66   (12.08.2007 в 15:49)   письмо автору
 
   для: Полина   (12.08.2007 в 15:41)
 

Не обязательно *.dat Можно и *.txt

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования