tim687
Terugkerende gebruiker
- Lid geworden
- 25 apr 2010
- Berichten
- 1.774
Beste leden,
Ik ben bezig met het ontwikkelen van mijn website.
Deze werkt met een custom cms.
Ik krijg alleen meerdere fout meldingen:
Call to a member function fetch_replies() on a non-object
Cannot use object of type Comment as array.
Dit is de code die boven aan de echte webpagina staat:
Vervolgens doet hij een foreach op de comments en komt er als object $comment uit. De comments worden netjes geladen, de reacties alleen niet.
Dit is midden in het html bestand zelf
Vervolgens gaat hij niet verder met het laden van de pagina, en krijg ik op mijn WAMP server de fout (zie de code hierboven) te zien (in het PHP error log bestand)
Wie weet wat ik fout doe?
ps: het foreach statement wordt met de } weer gesloten later in de code, deze heb ik alleen weggelaten
Bedankt,
Tim
Ik ben bezig met het ontwikkelen van mijn website.
Deze werkt met een custom cms.
Ik krijg alleen meerdere fout meldingen:
Call to a member function fetch_replies() on a non-object
Cannot use object of type Comment as array.
Dit is de code die boven aan de echte webpagina staat:
PHP:
<?php
include_once('includes/connection.php');
include_once('includes/blogpost.php');
include_once('includes/comment.php');
include_once('includes/reply.php');
$blogpost = new Blogpost;
$comment = new Comment;
$reply = new Reply;
if(isset($_GET['id'])){
// display the blogpost
$id = $_GET['id'];
$data = $blogpost->fetch_data($id);
$comments = $comment->fetch_comment($id);
}else{
header('Location: index.php');
exit();
}
?>
Connection.php en Blogpost.php werken!
comment.php:
<?php
class Comment{
public function fetch_comment($blog_post_id){
global $pdo;
$query = $pdo->prepare("SELECT * FROM blog_post_comments WHERE blog_post_id =?");
$query->bindValue(1, $blog_post_id);
$query->execute();
return $query->fetchAll();
}
}
?>
reply.php:
<?php
class Reply{
public function fetch_replies($blog_post_id,$comment_id){
global $pdo;
$query = $pdo->prepare("SELECT * FROM blog_post_comments WHERE blog_post_id=? AND blog_post_reply_comment_id =?");
$query->bindValue(1, $blog_post_id);
$query->bindValue(2, $comment_id);
$query->execute();
return $query->fetch();
}
}
?>
Vervolgens doet hij een foreach op de comments en komt er als object $comment uit. De comments worden netjes geladen, de reacties alleen niet.
Dit is midden in het html bestand zelf
PHP:
<?php
echo $data['blog_post_id'];
echo $comment['blog_post_reply_comment_id']; // Beide echo's geven de goede waarde!
$comment_id = $comment['blog_post_reply_comment_id'];
$replies = $reply->fetch_replies($data['blog_post_id'],int $comment_id); //Call to a member function fetch_replies() on a non-object in pagina.php on deze lijn
foreach($replies as $reply){
?>
Wie weet wat ik fout doe?
ps: het foreach statement wordt met de } weer gesloten later in de code, deze heb ik alleen weggelaten
Bedankt,
Tim
Laatst bewerkt: