Как исправить ошибку синтаксиса, неожиданную ошибку T_IF в php?

Ошибка анализа: синтаксическая ошибка, неожиданный T_IF в view.php в строке 27

Я действительно не вижу никаких проблем в своем коде, почему это происходит, пожалуйста, помогите. Я новичок в PHP

Где моя LINE 21 есть >> if (isset ($ _ GET ['page']) && is_numeric ($ _ GET ['page']))

if ($result = $mysqli->query("SELECT * FROM players ORDER BY id"))
{
    if ($result->num_rows > 0)
    {
        $total_result = $result->num_rows;
        $total_pages = ceil($total_result / $per_page)

        if(isset($_GET['page']) && is_numeric($_GET['page']))
        {
            $show_page = $_GET['page'];

            if ($show_page > 0 && $show_page <= $total_pages)
            {
                $start = ($show_page - 1) * $per_page;
                $end = $start + $per_page;
            }
            else
            {
                $start = 0;
                $end = $per_page;
            }               

        }
        else
        {
            $start = 0;
            $end = $per_page;
        }


        //display paginations
        echo "<p> View pages: ";
        for ($i=1; $i < $total_pages; $i++)
        { 
            if (isset($_GET['page']) && $_GET['page'] == $i)
            {
                echo  $i . " ";
            }
            else
            {
                echo "<a href='view-pag.php?$i'>" . $i . "</a> | ";
            }

        }
        echo "</p>";

    }
    else
    {
        echo "No result to display.";
    }

}
else
{
    echo "Error: " . $mysqli->error;
}

Ответ 1

Ошибки парсера PHP принимают некоторые привыкания; если он жалуется на неожиданное "что-то" в строке X, сначала взгляните на строку X-1. В этом случае он не скажет вам, что вы забыли полуточку в конце предыдущей строки, вместо этого она будет жаловаться на if что произойдет дальше.

Вы привыкнете к этому :)

Ответ 2

добавьте строку с запятой вперед:

$total_pages = ceil($total_result / $per_page);

Ответ 3

Вот вопрос

  $total_result = $result->num_rows;

попробуй это

<?php
if ($result = $mysqli->query("SELECT * FROM players ORDER BY id"))
{
    if ($result->num_rows > 0)
    {
        $total_result = $result->num_rows;
        $total_pages = ceil($total_result / $per_page);

        if(isset($_GET['page']) && is_numeric($_GET['page']))
        {
            $show_page = $_GET['page'];

            if ($show_page > 0 && $show_page <= $total_pages)
            {
                $start = ($show_page - 1) * $per_page;
                $end = $start + $per_page;
            }
            else
            {
                $start = 0;
                $end = $per_page;
            }               

        }
        else
        {
            $start = 0;
            $end = $per_page;
        }


        //display paginations
        echo "<p> View pages: ";
        for ($i=1; $i < $total_pages; $i++)
        { 
            if (isset($_GET['page']) && $_GET['page'] == $i)
            {
                echo  $i . " ";
            }
            else
            {
                echo "<a href='view-pag.php?$i'>" . $i . "</a> | ";
            }

        }
        echo "</p>";

    }
    else
    {
        echo "No result to display.";
    }

}
else
{
    echo "Error: " . $mysqli->error;
}


?>