Хочу сделать счётчик просмотров, есть описание и ссылка на подробности и от того сколько нажата ссылка на подробности такое кол-во раз и увеличивать счётчик, только не на странице подробности, а на странице в которой находится ссылка на подробности,то есть как здесь например. Написал так, но обновление идёт сразу на всех постах находящихся на странице, а не на тех на которых нажал на кнопку подробнее зашёл на этот пост. Код (Text): //Вывод постов for($i = 0; $i < $num; $i++) { $prosmotrov = mysql_query("select * FROM lessons",$connect); $rez = mysql_fetch_array($prosmotrov); $enlarge = $rez['obnovlenie']+1; $obnovlenie_rez = mysql_query("UPDATE lessons set obnovlenie = '$enlarge' where id = id "); echo 'Просмотров: '.$enlarge; if(isset($postrow[$i]['id'])) echo ' '.$postrow[$i]['text'].'<br/>'; }
ну еще бы оно не шло: $obnovlenie_rez = mysql_query("UPDATE lessons set obnovlenie = '$enlarge' where id = id "); этот запрос говорит мускулю: обнови все (условие id=id) строки таблицы lessons, присвой значение $enlarge колонке obnovlenie. поищи в коде поблизости id просматриваемой позиции и сделай так: PHP: $obnovlenie_rez = mysql_query("UPDATE lessons set obnovlenie = obnovlenie + 1 where id = ".$id); где $id - переменная, которую ты найдешь
Вот вложил архивом, не получается сделать чтоб считалось кол-во просмотров после нажатия на кнопку просмотров на один из постов, именно после нажатия на кнопку Подробнее. http://www.sharemania.ru/0196467"]http://www.sharemania.ru/0196467
Golovastik Не надо выкладывать архивом. Заходите в скрипт, где у вас формируется страница с "подробнее" и уже внутри него указываете код, который вам дал engager. А из файла где формируются посты: Уберите тут запрос для обновления Выбирайте из базу только то поле, которое вам нужно (в данном случае obnovlenie)
Написал так в коде: Код (Text): $prosmotrov = mysql_query("select * FROM lessons",$connect); //Вывод постов for($i = 0; $i < $num; $i++) { $rez = mysql_fetch_array($prosmotrov); //$enlarge = mysql_query("UPDATE lessons SET obnovlenie = obnovlenie+1 WHERE id=".$id); //echo 'Просмотров: '.$enlarge; if(isset($postrow[$i]['id'])) echo ' '.$postrow[$i]['text'].'<br/>'; } В базе данных для теста, такая запись в поле text. Код (Text): <?php $enlarge = mysql_query("UPDATE lessons SET obnovlenie = obnovlenie+1 WHERE id=".$id); ?> <div class="zagolovok_kyrsa">Заголовок 1</div> </br> <div align="justify" class="shrift"> Случилось то, чего <b>так долго ждали в Рунете,</b> но чего никогда ранее еще не было!..Произошло по истине эпохальное событие!.. Невероятный, потрясающий подарок всем, кто интересуется   <b>заработками в Сети!..</b> </div> <div> </div> <div align="right"> <a class="podrob" href="/videolessons/1_1.php">Подробнее </a><span class="skobki">>></span></div> <br /> Ошибок не выдаёт но счётчик не работает.[/code] http://www.sharemania.ru/0233102
Ребят, этот код для теста, не получается, подскажите, что в коде нужно исправить,что поменять на что?
Да это же елементарно Ватсон)) ПХП вытаскивает из базы страое значение obnovlenie и заменяет на новое obnovlenie+1
С верху в условии у тебя должно быть id=$id ну, а еще выше эта $id должна как бы существовать. Если ты обращаешся к файлу у тебя, если это пхп ссылка выглядит где-то так " href='view_post.php?id=3'" Далее у тебя есть эта переменная, у меня $id=3 но ты же передавал эту айди через строку по этому у тебя есть $_GET('id') в теории этого должно хватить, но, лучше их прировняй, в конечном итоге получится должно где-то так: PHP: <?php $id=isset($_GET['id'])?$_GET['id']:null; if(empty($id)){echo"Вы обратились к файлу без параметра";} else{$prosmotrov = mysql_query("select * FROM lessons",$connect); $rez = mysql_fetch_array($prosmotrov); $new_view = $rez['obnovlenie']+1; $enlarge = mysql_query("UPDATE lessons SET obnovlenie = $new_view WHERE id=$id",$connect); if($enlarge=='true'){echo "Скрипт сработал,обновите страницу для проверки его работоспособности!!!<br>"; echo "Просмотров: $new_view";} else{echo "Есть трабла, может даже моя, но увы, хочу спать, остальное завтра!";} } ?>