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

Форум PHP

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

 

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

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

тема: Не могу написать ссылку для увеличения счётчика.
 
 автор: Димитрий   (08.06.2005 в 22:55)   письмо автору
 
 

Здраствуйте.
Допустим, у меня:
<?php
function Test()
{
    static 
$a 0;
    echo 
$a;
    
$a++;
}
?>

Теперь при каждом вызове функция Test() будет выводить значение $a и инкрементировать его.
Вопрос: Как это сделать? если у меня должна стоять ссылка увеличения счётчика на эту же страницу, и рядом результат счётчика.
Пример: http://xxxxx.net.ru/counter.php

   
 
 автор: Akira   (08.06.2005 в 22:59)   письмо автору
 
   для: Димитрий   (08.06.2005 в 22:55)
 

Я не совсем понял. Зачем static? счетчик должен увеличиватсья только на данной странице или вообще?
И почему не использовать куки?

   
 
 автор: Димитрий   (08.06.2005 в 23:23)   письмо автору
 
   для: Akira   (08.06.2005 в 22:59)
 

Без static

<?php
function Test ()
{
    
$a 0;
    echo 
$a;
    
$a++;
}
?>

Эта функция абсолютно бесполезна поскольку при каждом вызове она устанавливает $a в 0 и выводит "0". Инкремент переменной $a++ здесь не играет роли, так как при выходе из функции переменная $a исчезает.
Или это не правильно?
Вы знаете, я плохо ещё знаю PHP, и не могу скрипты вставить в ссылку, если можно поподробней. И ещё: в данном случае не могу значение счётчика вставить в ссылку.

   
 
 автор: Akira   (08.06.2005 в 23:35)   письмо автору
 
   для: Димитрий   (08.06.2005 в 23:23)
 


<?php 
function Test ($a# при любом значении $a она будет ровна 1

    
$a 0
    echo 
$a# выведет 0
    
$a++; 
    echo 
$a# выведет 1
    
return $a# сохранит $a за пределами функции

?>

Я не понемаю, что вы хотите сделать? Вы хотите вывести переменную "а" за пределы функции?

   
 
 автор: Димитрий   (09.06.2005 в 00:16)   письмо автору
 
   для: Akira   (08.06.2005 в 23:35)
 

Изучая страницу http://www.softtime.ru/forum/read.php?id_forum=1&id_theme=358 не могу вникнуть.
заводи переменную-счетчик,помещай ее в базу и каждый раз при клике на эту ссылку (это можно сделать при помощи onClick )эта переменная $count = $count+1;
вот так,все просто...


Мне для первого раза любой вариант хорош, лишь бы сработало, я писал, что не могу значение счётчика вставить в ссылку

Я понимаю ссылку: <a href="http://www.mysite.ru/counter.php?url=www.rambler.ru">Rambler</a>
А вот как сбоку указать вывод счётчика?
Например 2 строки:
"да" ------"счётчик ответа да"
"нет" -----"счётчик ответа нет"
В обоих случаях после клика открывается или обновляется эта же страница, а ответ меняется.

На данном сайте установлена Система голосования, как на странице http://www.softtime.ru/bookphp/gl1_1.php. А почему бы нельзя установить просто кликами и сбоку результат.

   
 
 автор: Akira   (09.06.2005 в 00:20)   письмо автору
 
   для: Димитрий   (09.06.2005 в 00:16)
 

Хм это все так сумбурно.
Вы так и не сказали, чего добиваетесь.

   
 
 автор: Димитрий   (09.06.2005 в 00:55)   письмо автору
 
   для: Akira   (09.06.2005 в 00:20)
 

Добиваюсь? Сколько книг уже я читал, и нигде не написаны такие уроки, как например в htm:
<A href="http://xxxxx.net.ru/x/005/0002.php" target=_blank>Жимолость</A>.
Где объясняют значение target=_blank - открытие в новом окне,
или target=_top - открытие нового окна с закрытием старого.
и полное объяснение значения <A href=",
где <a href="#01">слово</a> - ссылка на этой же странице,
а значение #01 - объяснение: ссылается на конкретное место.
Или :<a href="005/0002.php"#01>слово</a>
куда надо поставить <a NAME="01"></a>

Может я такое бревно, но как ещё самостоятельно учить?
А вот где можно найти уроки PHP значения ссылок?

Мне надо в ссылку на эту же страницу указать подсчёт счётчика, который отображается рядом, и как в PHP владеть скриптом <A href="., а особенно #01

   
 
 автор: Akira   (09.06.2005 в 01:09)   письмо автору
 
   для: Димитрий   (09.06.2005 в 00:55)
 

Начнем с того , что php это серверный язык. Он не работает с клиентом. Он генерирует html код.
И что значит "Мне надо в ссылку на эту же страницу указать подсчёт счётчика, который отображается рядом, и как в PHP владеть скриптом <A href="., а особенно #01" Вы пример опишите, желательно живой и поподробнее.
Книгу можно купить. Или прочитать на сайте.

   
 
 автор: Димитрий   (09.06.2005 в 01:42)   письмо автору
 
   для: Akira   (09.06.2005 в 01:09)
 

Страница http://xxxxx.net.ru/counter.php
... и больше ничего не надо, только увеличить число счётчика, ведь на этом сайте есть счётчик тем, и счётчик числа сообщений в информации о пользователе.
На других сайтах, например: http://publikant.ru/asp/book.asp?id_d=110803&id_r=5414&id_c=5200&id_s=26588 указано количество продаж.

Например:
<?php
$counter
++;
setcookie ("counter",$counter);
echo(
"Вы смотрите эти анекдоты $counter страниц");
?>

указывает число посещений страницы пользователем до выхода из cookie.
А почему не зделать подобный лёгкий скрипт не обнуляющий информацию счётчика для всех.
Например: ссылка на определённый файл под определённую переменную, а там указать CONTENT="0; URL= обратный . а рядом результат этой переменной.
Я вроде соображаю, только не могу правильно решить.

   
 
 автор: Akira   (09.06.2005 в 01:48)   письмо автору
 
   для: Димитрий   (09.06.2005 в 01:42)
 

Использовать какой либо счетчик возможно только при использовании одной из трех вещей. Cookie, бд, файлы.
>http://publikant.ru/asp/book.asp?id_d=110803&id_r=5414&id_c=5200&id_s=26588
В этой ссылке передаються значения переменных.
В файл book.asp

$id_d=110803
$id_r=5414
$id_c=5200
$id_s=26588

И опять я не понемаю, что вы хотите. Может я такой не понятливый. Надо дождатсья cheops'a

   
 
 автор: Димитрий   (09.06.2005 в 02:28)   письмо автору
 
   для: Akira   (09.06.2005 в 01:48)
 

Кстати, интересный момент,
по поводу cookie
<?php
$counter
++;
setcookie ("counter",$countertime() + 3600*24*365*1000);
echo(
"Вы смотрите эти анекдоты $counter страниц");
?>

Кажется я сумел на странице http://xxxxx.net.ru/anegdot/index.php срок дать на 1000 лет.
Говорят, что срок у него не большой

   
 
 автор: glsv (Дизайнер)   (09.06.2005 в 05:15)   письмо автору
 
   для: Димитрий   (09.06.2005 в 01:42)
 

Любой счетчик, реализованный на php работает следующим образом.
Условимся, что счетчик размещен на php-странице.

1. При первом обращении посетителя к этой страницы инициализируется значение счетчика.

2. Значение счетчика сохраняется для последующего использования. Сохранять можно куда угодно: в файл, в базу данных, в сессии, в cookies. Но сохранить нужно обязательно, поскольку, как только php-скрипт сгенерирует HTML-страницу значение переменной будет потеряно.
Вы именно об этом и говорите.
> так как при выходе из функции переменная $a исчезает.

3. При последущих обращениях к php-скрипту (php-странице) счетчик получает сохраненное значение переменной из того места куда он его сохранял (файл, база данных, сессии, cookies).

4. Увеличивает полученной значение на 1

5. Сохраняет увеличенной значение переменной (повторение шага 3).

   
 
 автор: Димитрий   (09.06.2005 в 20:45)   письмо автору
 
   для: glsv (Дизайнер)   (09.06.2005 в 05:15)
 

Я понимаю всё это, только ползаю на одном месте.
Можно, ли, описать примерно один из вариантов скриптами?, а то запутался.

   
 
 автор: cheops   (09.06.2005 в 21:50)   письмо автору
 
   для: Димитрий   (09.06.2005 в 20:45)
 

За основу вы можете взять простейший счётчик LiteCounter, который доступен для свободной загрузки из раздела downloads нашего сайта http://www.softtime.ru/info/litecounter10.php. Если возникнут вопросы по его коду - обращайтесь обязательно поможем.

   
 
 автор: OZ   (08.06.2005 в 23:59)   письмо автору
 
   для: Димитрий   (08.06.2005 в 22:55)
 

А ты в файл запиши значение $a, считывай, увеличивай и записывай. В downloads учебник по php есть.

   
Rambler's Top100
вверх

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