Page 1 of 4

Колко пъти е преглеждана дадена новина

Posted: Sat Oct 10, 2020 1:42 pm
by Vladislaw
Здравейте,

някой да има работещ php/mysql код, който да показва за всяка страница (новина) по-отделно колко пъти е преглеждана?
Преди доста години бях писал такъв код, но нямам спомен как се правеше.. А в нета пробвах над 10 нито едно не работи.

Re: Колко пъти е преглеждана дадена новина

Posted: Sat Oct 10, 2020 4:29 pm
by Ticketa
Добавяш си една колона `views` при преглед на новината правиш UPDATE заявка с view+1

UPDATE `news` SET views = views +1 WHERE `news_id` = $id;

Re: Колко пъти е преглеждана дадена новина

Posted: Sun Oct 11, 2020 8:36 am
by Vladislaw
Ticketa wrote:
Sat Oct 10, 2020 4:29 pm
Добавяш си една колона `views` при преглед на новината правиш UPDATE заявка с view+1

UPDATE `news` SET views = views +1 WHERE `news_id` = $id;
Добавил съм такава колона "count" и изкарвам резултата така:

Code: Select all

<?php
$pid=intval($_GET['nid']);
 $query=mysqli_query($con,"select tblposts.PostTitle as posttitle,tblposts.id as pid,tblposts.Count as count,tblposts.Vrolite as vrolite,tblposts.Rejisior as rejisior,tblposts.Tags as tags,tblposts.Vremetraene as vremetraene,tblposts.DataSuzdavane as datasuzdavane,tblposts.Imdbrating as imdbrating,tblposts.Tags as tags,tblposts.PostImage,tblcategory.CategoryName as category,tblcategory.id as cid,tblsubcategory.Subcategory as subcategory,tblposts.PostDetails as postdetails,tblposts.Video as video,tblposts.PostingDate as postingdate,tblposts.PostUrl as url from tblposts left join tblcategory on tblcategory.id=tblposts.CategoryId left join  tblsubcategory on  tblsubcategory.SubCategoryId=tblposts.SubCategoryId where tblposts.id='$pid'");
while ($row=mysqli_fetch_array($query)) {
?>
Демек да добавя update в този код?

Re: Колко пъти е преглеждана дадена новина

Posted: Sun Oct 11, 2020 8:50 am
by Ticketa
Vladislaw wrote:
Sun Oct 11, 2020 8:36 am
Ticketa wrote:
Sat Oct 10, 2020 4:29 pm
Добавяш си една колона `views` при преглед на новината правиш UPDATE заявка с view+1

UPDATE `news` SET views = views +1 WHERE `news_id` = $id;
Добавил съм такава колона "count" и изкарвам резултата така:

Code: Select all

<?php
$pid=intval($_GET['nid']);
 $query=mysqli_query($con,"select tblposts.PostTitle as posttitle,tblposts.id as pid,tblposts.Count as count,tblposts.Vrolite as vrolite,tblposts.Rejisior as rejisior,tblposts.Tags as tags,tblposts.Vremetraene as vremetraene,tblposts.DataSuzdavane as datasuzdavane,tblposts.Imdbrating as imdbrating,tblposts.Tags as tags,tblposts.PostImage,tblcategory.CategoryName as category,tblcategory.id as cid,tblsubcategory.Subcategory as subcategory,tblposts.PostDetails as postdetails,tblposts.Video as video,tblposts.PostingDate as postingdate,tblposts.PostUrl as url from tblposts left join tblcategory on tblcategory.id=tblposts.CategoryId left join  tblsubcategory on  tblsubcategory.SubCategoryId=tblposts.SubCategoryId where tblposts.id='$pid'");
while ($row=mysqli_fetch_array($query)) {
?>
Демек да добавя update в този код?
В цикъла while() добави UPDATE заявката и колкото пъти се отвори новината ще отчита +1 преглед.

Re: Колко пъти е преглеждана дадена новина

Posted: Sun Oct 11, 2020 11:28 am
by Vladislaw
Нещо май не правя както трябва, пробвах и така

$update=mysql_query("UPDATE `tblposts` SET count = count +1 WHERE `id` = $id;");

но грешка в страницата.

Re: Колко пъти е преглеждана дадена новина

Posted: Sun Oct 11, 2020 2:18 pm
by anonimen
Vladislaw wrote:
Sun Oct 11, 2020 11:28 am
Нещо май не правя както трябва, пробвах и така

$update=mysql_query("UPDATE `tblposts` SET count = count +1 WHERE `id` = $id;");

но грешка в страницата.
Използвай mysqli_* функциите, и задължително се подсигури, че $id е int:

Code: Select all

WHERE `id` = " . (int) $id . ";"
Каква грешка получаваш иначе?

Re: Колко пъти е преглеждана дадена новина

Posted: Sun Oct 11, 2020 4:11 pm
by Vladislaw
грешка 505

Re: Колко пъти е преглеждана дадена новина

Posted: Sun Oct 11, 2020 4:38 pm
by Ticketa
Дай си целия код.

Re: Колко пъти е преглеждана дадена новина

Posted: Sun Oct 11, 2020 5:20 pm
by Vladislaw

Code: Select all

<?php 
     if (isset($_GET['pageno'])) {
            $pageno = $_GET['pageno'];
        } else {
            $pageno = 3;
        }
        $no_of_records_per_page = 5;
        $offset = ($pageno-1) * $no_of_records_per_page;


        $total_pages_sql = "SELECT COUNT(*) FROM tblposts";
        $result = mysqli_query($con,$total_pages_sql);
        $total_rows = mysqli_fetch_array($result)[0];
        $total_pages = ceil($total_rows / $no_of_records_per_page);


$query=mysqli_query($con,"select tblposts.id as pid,tblposts.Datasuzdavane as datasuzdavane,tblposts.Vremetraene as vremetraene,tblposts.Imdbrating as imdbrating,tblposts.PostTitle as posttitle,tblposts.PostImage,tblcategory.CategoryName as category,tblcategory.id as cid,tblsubcategory.Subcategory as subcategory,tblposts.PostDetails as postdetails,tblposts.PostingDate as postingdate,tblposts.PostUrl as url from tblposts left join tblcategory on tblcategory.id=tblposts.CategoryId left join  tblsubcategory on  tblsubcategory.SubCategoryId=tblposts.SubCategoryId where tblposts.Is_Active=1 order by tblposts.id desc  LIMIT $offset, $no_of_records_per_page");
while ($row=mysqli_fetch_array($query)) {
?>

Re: Колко пъти е преглеждана дадена новина

Posted: Sun Oct 11, 2020 6:23 pm
by Vladislaw
С този код изкарвам новините

Code: Select all

<?php
$pid=intval($_GET['nid']);
 $query=mysqli_query($con,"select tblposts.PostTitle as posttitle,tblposts.id as pid,tblposts.Count as count,tblposts.Vrolite as vrolite,tblposts.Rejisior as rejisior,tblposts.Tags as tags,tblposts.Vremetraene as vremetraene,tblposts.DataSuzdavane as datasuzdavane,tblposts.Imdbrating as imdbrating,tblposts.Tags as tags,tblposts.PostImage,tblcategory.CategoryName as category,tblcategory.id as cid,tblsubcategory.Subcategory as subcategory,tblposts.PostDetails as postdetails,tblposts.Video as video,tblposts.PostingDate as postingdate,tblposts.PostUrl as url from tblposts left join tblcategory on tblcategory.id=tblposts.CategoryId left join  tblsubcategory on  tblsubcategory.SubCategoryId=tblposts.SubCategoryId where tblposts.id='$pid'");
while ($row=mysqli_fetch_array($query)) {
?>