pearがエラーになる
xamppにpearをインストールし、テキストを見ながらプログラムを作成し、実行しましたが、とエラーになります。
エラーの画面は以下のとおりです。
接続に成功しました
Fatal error: Call to a member function getOne() on a non-object in C:\Program Files\xampp\htdocs\pje_bulletin\bbs.php on line 15
これに対するプログラムは以下のようなものです。
【bbs.php】
<?php
require_once("Init_class.php");
$init_obj = new Init_class();
$in_disp_from = $_GET["in_disp_from"];
if(!$in_disp_from = intval($in_disp_from)){
$in_disp_from = 0;
}
$in_disp_to = $in_disp_from + 10;
$sql = "SELECT (*) FROM bbs_table";
$count_result = $init_obj->db_object->getOne($sql); ←ここがline 15
$sql="SELECT message_sequence,contributor,mai_address,home_page_uri,subject,message,pass,_word,write_date FROM bbs_table ORDER BY message_sequence DESC LIMIT ".$in_disp_from.", "."10";
$db_result = $init_obj->db_object->query($sql);
disp_html_header($init_obj->bbs_name);
?>
以下続く
【Init_class.php】
<?php
/* PEAR::DBを読み込む */
require_once("../../php/PEAR/DB.php");
require_once("html_disp.php");
/* メンバ変数 */
class Init_class{
var $db_object;
var $decode_key = "abcdefg";
var $db_user = "root";
var $db_pass = "";
var $db_host ="localhost";
var $db_name ="keroro";
var $bbs_name = "まっちゃんの掲示板";
}
/* コンストラクタ → DBへの接続 */
function Init_class(){
$db_string = "mysql://".$this->db_user.":".$this->db_pass."@".$this->db_host."/".$this->db_name;
$this->db_object = DB::connect($db_string);
}
print("接続に成功しました");
以下続く
●pearを使わないで、PHPから直接MySQLにつながります。
●SQLも簡単なヤツですし、コマンドラインからも問題ありませんでした。
●一旦は接続できているようなのですが、次のrowをカウントに行くところでつまづいています。
PEARがちゃんとインストールされていないのかと思いましたが、
コマンドで「pear list」とやると、
DB 1.7.13 stable
なっており、このほかに70個ぐらいのモジュールというかパッケージがセットされているようです。
それと、php.iniのinclude pathもちゃんと設定されています。
どなたかご指導下さい。
よろしくお願いします。
補足
私の記憶ではG's BBS LiteはCGIを使わずに使えてたと思うのですが・・・。 似たような機能でオススメがあれば教えてください。