PHP сколько строк найдено

0

У меня есть Google, как это сделать, но я не могу понять это. Итак, это мой код:

<?php
session_start();

Function PrintAll() {
    echo "<center>";
    echo "Filmpje Nummer: ".$_SESSION['hits'];
    echo "</center>";
    $dbnaam = "a2943462_Pages"; 

    $connection = mysql_connect($dbhost,$uname,$pass) or die ("niet gelukt om als $user te connecten met $host"); 
    $result = mysql_select_db($dbnaam,$connection);

    $sql = "SELECT * FROM PagesInfo WHERE ID=".$_SESSION['hits']; // sql select query 
    $result = mysql_query($sql, $connection); 

    while ($rij = mysql_fetch_array($result)) 
    { 
        echo "<center>";
        echo "<h3>" . $rij["Title"] . "</h3>";
        echo $rij["Video"] . "<br/>";
        echo "<p>" ."Posted By: " . $rij["Posted"] . "</p>";
        echo "</center>";
    } 
}

function ShowButtons() {
    echo "<html>
    <head><title>COUNTER</title>
    <link rel='stylesheet' type='text/css' href='style.css'/>
    </head>
    <body><center>
    <form  method='get'>
    <input type='submit' name='Previous' value='<< Previous'/>
    <input type='submit' name='Next' value='Next >>'/>
    </form></center>
    </body>
    </html>";
}

function DisPre() {
    echo "<html>
    <head><title>COUNTER</title>
    <link rel='stylesheet' type='text/css' href='style.css'/>
    </head>
    <body><center>
    <form  method='get'>
    <input type='submit' name='Next' value='Next >>'/>
    </form></center>
    </body>
    </html>";
}

if($_GET){
    $pageShow = $_SESSION['hits'];
    if(isset($_GET['Next'])){
        $_SESSION['hits']++;
        PrintAll();
    }elseif(isset($_GET['Previous'])){
        if ($_SESSION['hits'] < 1) {
            echo "Cannot go further Back";
            DisPre(); 
        }else{
            $_SESSION['hits']--;
            PrintAll();
        }
    }
}

if(isset($_SESSION['hits'])){
    if ($_SESSION['hits'] < 1){
        disPre();
    }else{
        ShowButtons();
    }
}else{
    $_SESSION['hits']=1;
    PrintAll();
}
?>

Итак, как и где мне нужно добавить код, который делает это:

Если он не найдет никаких строк в таблице PagesInfo, он будет следующим образом:

echo "<center><img src='Sourceher' height='390px' width='640px' /></center>";

Может кто-то может поместить код внутри моего кода? Буду признателен за любую оказанную помощь.

  • 4
    mysql_ * функции устарели. Придерживайтесь PDO или mysqli_ *
  • 0
    @ user3588568 Убедитесь, что при вставке кода он не содержит конфиденциальной информации, такой как пароли базы данных, или вы просто рискуете потерять много.
Теги:

2 ответа

1
Лучший ответ

Измените эту часть:

$sql = "SELECT * FROM PagesInfo WHERE ID=".$_SESSION['hits']; // sql select query 
$result = mysql_query($sql, $connection); 

while ($rij = mysql_fetch_array($result)) 
{ 
echo "<center>";
echo "<h3>" . $rij["Title"] . "</h3>";
echo $rij["Video"] . "<br/>";
echo "<p>" ."Posted By: " . $rij["Posted"] . "</p>";
echo "</center>";
}

чтобы:

$sql = "SELECT * FROM PagesInfo WHERE ID=".$_SESSION['hits']; // sql select query 
$result = mysql_query($sql, $connection); 
if(mysql_num_rows($result) >0){
while ($rij = mysql_fetch_array($result)) 
{ 
echo "<center>";
echo "<h3>" . $rij["Title"] . "</h3>";
echo $rij["Video"] . "<br/>";
echo "<p>" ."Posted By: " . $rij["Posted"] . "</p>";
echo "</center>";
}
}
else {
echo "<center><img src='Sourceher' height='390px' width='640px' /></center>";

}

NB: mysql_* устарел, используя PDO или mysqli_*.

  • 0
    Большое спасибо за полезный ответ.
0

Следующий код поможет вам, проверив количество возвращенных строк с помощью $stmt->num_rows.
Он также заменяет устаревшее расширение MySQL с расширением MySQLi.
Кроме того, он защищает вас от SQL-инъекций, используя prepared queries.

$connection = new mysqli($host, $user, $password, $dbnaam);
if (mysqli_connect_errno()){
    die("Niet gelukt om als $user te connecten met $host");
}
$query = "SELECT * FROM PagesInfo WHERE ID=?";
if ($stmt = $connection->prepare($query)) {
    $stmt->bind_param("i", $_SESSION["hits"]);
    $stmt->execute();
    $result = $stmt->get_result();
    if ($stmt->num_rows == 0){
        echo "<center><img src='Sourceher' height='390px' width='640px' /></center>";
    }
    else{
        while ($rij = $result->fetch_array(MYSQLI_NUM)) {
            echo "<center>";
            echo "<h3>" . $rij["Title"] . "</h3>";
            echo $rij["Video"] . "<br/>";
            echo "<p>" ."Posted By: " . $rij["Posted"] . "</p>";
            echo "</center>";
        }
    }
    $stmt->close();
}

Информация об устаревании для расширения MySQL

Ещё вопросы

Сообщество Overcoder
Наверх
Меню