Non a Object

kosovafan

Erfahrenes Mitglied
Hallo,

ich verstehe die Fehlermeldung nicht:

Code:
Fatal error: Call to a member function fetch() on a non-object in /var/www/web2/inc/php/tpl/deu/blog/blogpost.php on line 31

Das PHP Script:

PHP:
<?php
require_once "db_de.php";
$id = ((!empty ($_GET['id'])) ? $_GET['id'] : '');

// check article is present in database

if(isset($_GET['id']) && $_GET['id'] != '')
{
 $query = $db->prepare("SELECT id FROM bloggen WHERE id=".(int) $id);
 $query->execute(array());
 $rows = $query->fetchColumn();

        if(!$rows)
        {
                        include_once "tpl/deu/blog/falsepost.php";
        }

        else
        {
                        //The Article is in Database
                        $query = $db->prepare( "SELECT id, date, autor, title, teaser, content FROM bloggen WHERE id=".(int) $id);
                        $query->execute();

                        //The Database is online
                        if(!$query)
                        {
                                die ("<p>Die Datenbank ist zurzeit nicht erreichbar</p>");
                        }

                        //Database is online, give out the article
                        while ($row = $query->fetch(PDO::FETCH_OBJ))
                        {
                                include_once "tpl/deu/blog/truepost.php";
                        }
        }
}
?>

Die Zeile die er bemängelt ist die while Schleife. Es hat als alles in einer Datei war ohne Probleme funktioniert, jetzt non a object.

Die Datei truepost.php

PHP:
<!DOCTYPE html>
<html lang="de">
<head>
 <title>Blog :: Silvio Siefke :: <?php echo " . $row->title . " ?></title>
  <meta charset="utf-8">
  <meta name="description" content="Meine Privaten Gedanken zum Weltgeschehen und Tagebücher aus den Bereichen Technik und Weltgeschehen">
  <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no">
  <link rel="stylesheet" href="../inc/style/style.css" type="text/css">
</head>

<body>

<header>
  <p><a href="../index.html" title="Silvio Siefke" id="logo">Startseite</a></p>
</header>

<section id="content">
 <h1><?php  echo htmlspecialchars($row->title,ENT_QUOTES,"UTF-8")  ?></h1>
 <p class="small">Dieser Artikel wurde am <?php echo $row->date ?> veröffentlicht.</p>

 <?php echo html_entity_decode($row->content, ENT_QUOTES, "UTF-8"); ?>
</section>

<?php
$row = null;
$query = null;
$db = null;
?>
</body>
</html>

Würde mich über einen kurzen Wink freuen.


MFG & Schönes Wochenende
Silvio
 
Poste mal den Inhalt von tpl/deu/blog/truepost.php

Da hab ich wohl gepennt ;-)

Nunja, in der truepost.php wird $query auf null gesetzt. Der erste Durchlauf funktioniert, da wird die truepost.php included. Dann ist beim zweiten Durchlauf $query auf null.
 
Zurück