Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Центр помощи > [PHP] Счетчик нажатий на кнопку.


Автор: fedottt 7.10.2007, 10:54
в общем есть такое на данный момент:

Код

<script>var clicks=0;</script>
<input onclick="clicks++;document.getElementById('writecounter').innerHTML=clicks;return false;" type="button" name="Кнопго!" value="Button">

<div id="writecounter">0</div>


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

Ребят,  smile   smile 

Бо полный ноль в php+mysql (или текст. файл вместо базы)




Автор: Guedda 7.10.2007, 11:38
А обязательно ли в пхп? Ведь ЯваСкрипт умеет работать с cookies. И в куках и хранить результат. Как Вам такая идея?

Автор: fedottt 7.10.2007, 13:32
куки будут для одного юзера. 
или для каждого свой результат.
а нужно именно общее. 
то есть, я зашел, поклацал.. Вася, петя, маша и тыды.. вместе наклацали 230 нажатий. вот чтобы они все и отображались

Автор: dsCode 7.10.2007, 14:23
fedottt, серверный язык Вам нужен. Если не нужна база - храните в файле (только залочьте его во время записи, чтобы другой не обратился на запись в одно время. А вот, кстати, здесь может быть косяк - пока файл залочен - второй юзер пропустит запись своего клика. В этом случае - база выстраивает очередь, если есть лок).

Автор: fedottt 7.10.2007, 14:26
а можно готовый код?))
не мое это дело - программинг(

Автор: Sannis 8.10.2007, 02:17
Самый тупой дубовый код:
Код

<?php
    if( file_exists('./counter.dat') )
    {
        $c = intval(trim(file_get_contents('./counter.dat')));
    }
    else
    {
        $c = 0;
    }

    if( isset($_POST['button_click']) AND $_POST['button_click'] )
    {
        $c++;
        $fh = fopen('./counter.dat', 'w+');
        fwrite($fh, $c);
        fclose($fh);
    }
?>
<form action="<?php print $_SERVER['PHP_SELF'];?>" method="POST">
<input type="hidden" name="button_click" value="1" />
<input type="submit" name="submit" value="Кнопго!" />
</form>
<div id="writecounter"><?php print $c;?></div>

Автор: BuShaRt 8.10.2007, 07:34
Извращенцы smile 
Код

UPDATE lll SET val = val + 1


Забудьте о текстовых файлах - это устаревшое и вообще считаеться плохим тоном.

Автор: fedottt 28.11.2007, 23:33
пасиба)
а как бы еще слепить первый вариант и запись в БД?

Автор: skyboy 29.11.2007, 01:01

M
skyboy
fedottt, если ждешь, что за тебя будут писать код - в "Центр помощи" шагай. А здесь - задавай конкретные вопросы и принимай участие.

А то после 
Цитата(fedottt @  7.10.2007,  13:26 Найти цитируемый пост)
не мое это дело - программинг

приходит на ум
Цитата

не барское это дело - мешки таскать

Автор: abalich 30.11.2007, 16:51
Код

<form method="post" action="">
 <input type="submit" name="click" value="click">
</form>


Код

<?php
$link = mysql_connect('localhost','login','password');
      mysql_select_db('DB_NAME',$link);

  if(isset($_POST['click'])){
     $sql = "UPDATE `click` SET `num`=`num` + 1";
   mysql_query($sql,$link);
}

function click(){
   $sql = "SELECT * FROM `click` LIMIT 1";
   $res = mysql_query($sql,$link);
   $mas = mysql_fetch_array($res);
   return $mas['num'];
}
?>


Код

<div><?=click();?></div>

Автор: skyboy 2.12.2007, 12:08
Для домашних заданий, курсовых, существует "Центр Помощи".

Тема перенесена! 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)