在非对象行9上调用成员函数prepare()

时间:2014-09-08 18:49:01

标签: php

我收到此错误: Call to a member function prepare() on a non-object line 9

有人可以帮我搞清楚吗?

<?php

if(is_numeric($newsId) && $newsId>0)

{
    // ---------------------
    // select des champs dans la BD
    $news_fiche_query       = "SELECT * FROM ".$NEWS_TABLE." ".
                            " WHERE news_id = :newsId;";
  try {
    $pdo_select             = $pdo->prepare($news_fiche_query);
    $pdo_select->bindValue(':newsId',       $newsId,        PDO::PARAM_INT);
    $pdo_select->execute();
    $news_fiche_nombre      = $pdo_select->rowCount();
    $news_fiche_row         = $pdo_select->fetch();
  } catch (PDOException $e) { echo 'Erreur SQL : '. $e->getMessage().'<br/>'; die(); }
    // ---------------------
    $newsId                 = intval($news_fiche_row['news_id']);
    $newsTitre              = formatage_affichage($news_fiche_row['news_titre']);
    $newsContenu            = formatage_from_textarea($news_fiche_row['news_contenu']);         // texarea
    $newsDate               = intval($news_fiche_row['news_date']);
    $newsPublier            = formatage_affichage($news_fiche_row['news_publier']);
    // ---------------------
    // Photo
    $newsPhoto              = formatage_affichage($news_fiche_row['news_photo']);
    $newsPhotoAvant         = $newsPhoto;
    $newsPhotoLargeur       = intval($news_fiche_row['news_photo_largeur']);
    // ---------------------
    // Fichier joint
    $newsFile               = formatage_affichage($news_fiche_row['news_file']);
    $newsFileAvant          = $newsFile;
// ---------------------------------------------------
} else {
    // ---------------------
    // Initialisation de l'Article (Ajouter)
    $newsId                 = 0;
    $newsTitre              = '';
    $newsContenu            = '';
    $newsDate               = time();   // date du jour par défaut
    $newsPublier            = 1;        // Publier : Oui par défaut
    // ---------------------
    // Photo
    $newsPhoto              = '';
    $newsPhotoAvant         = '';
    $newsPhotoLargeur       = 300;      // par défaut
    // ---------------------
    // Fichier joint
    $newsFile               = '';
    $newsFileAvant          = '';
    // ---------------------
}
// ---------------------------------------------------
?>

1 个答案:

答案 0 :(得分:0)

您的$pdo对象尚未定义。试试这个:

<?php

if(is_numeric($newsId) && $newsId>0)

{
    // ---------------------
    // select des champs dans la BD
    $news_fiche_query       = "SELECT * FROM ".$NEWS_TABLE." ".
                            " WHERE news_id = :newsId;";
  try {
    $pdo                    = new PDO('mysql:host=localhost;dbname=YOUR_DB;charset=utf8', 'YOUR_USERNAME', 'YOUR_PASSWORD');
    $pdo_select             = $pdo->prepare($news_fiche_query);
    $pdo_select->bindValue(':newsId',       $newsId,        PDO::PARAM_INT);
    $pdo_select->execute();
    $news_fiche_nombre      = $pdo_select->rowCount();
    $news_fiche_row         = $pdo_select->fetch();
  } catch (PDOException $e) { echo 'Erreur SQL : '. $e->getMessage().'<br/>'; die(); }
    // ---------------------
    $newsId                 = intval($news_fiche_row['news_id']);
    $newsTitre              = formatage_affichage($news_fiche_row['news_titre']);
    $newsContenu            = formatage_from_textarea($news_fiche_row['news_contenu']);         // texarea
    $newsDate               = intval($news_fiche_row['news_date']);
    $newsPublier            = formatage_affichage($news_fiche_row['news_publier']);
    // ---------------------
    // Photo
    $newsPhoto              = formatage_affichage($news_fiche_row['news_photo']);
    $newsPhotoAvant         = $newsPhoto;
    $newsPhotoLargeur       = intval($news_fiche_row['news_photo_largeur']);
    // ---------------------
    // Fichier joint
    $newsFile               = formatage_affichage($news_fiche_row['news_file']);
    $newsFileAvant          = $newsFile;
// ---------------------------------------------------
} else {
    // ---------------------
    // Initialisation de l'Article (Ajouter)
    $newsId                 = 0;
    $newsTitre              = '';
    $newsContenu            = '';
    $newsDate               = time();   // date du jour par défaut
    $newsPublier            = 1;        // Publier : Oui par défaut
    // ---------------------
    // Photo
    $newsPhoto              = '';
    $newsPhotoAvant         = '';
    $newsPhotoLargeur       = 300;      // par défaut
    // ---------------------
    // Fichier joint
    $newsFile               = '';
    $newsFileAvant          = '';
    // ---------------------
}
// ---------------------------------------------------
?>