2011-10-28 8 views
4

ここでは、統計情報を手助けするために別のページから呼び出すためのサンプルコードを示します。私はそれを働かせるように見えない。このクラスを別のPHPファイルにインポートして呼び出すにはどうすればいいですか?私は別のファイルに、ここでそのクラスを呼び出したいstats.phpPHPクラスのインポート

<?php 

include("config.php"); 
$link = mysql_connect($host, $username, $password); 
mysql_select_db("mydb", $link); 

class stats{ 

    function newReg(){ 

    $result = mysql_query("SELECT * FROM people where status ='registered' ", $link); 
    $num_rows = mysql_num_rows($result); 
    return $num_rows ; 


function newApp(){ 
    $result = mysql_query("SELECT * FROM people where status = 'NEW' ", $link); 
    $num_rows = mysql_num_rows($result); 

    return $num_rows; 
} 
?> 

<?php 

require_once("stats.php"); 
    echo(stats.newReg()); 

?> 

は、私がここに欠けている何かがありますか?

+0

あなたが他のページにそれを含めることを試みるコードを見ることなく、それは助けが難しいです... –

答えて

10

あなたは、とにかく他のファイル2つの決算ブラケット

<?php 

include("config.php"); 
$link = mysql_connect($host, $username, $password); 
mysql_select_db("mydb", $link); 

class stats{ 

    function newReg(){ 
    global $link; 
    $result = mysql_query("SELECT * FROM people where status ='registered' ", $link); 
    $num_rows = mysql_num_rows($result); 
    return $num_rows ; 
    } 

function newApp(){ 
    global $link;   
    $result = mysql_query("SELECT * FROM people where status = 'NEW' ", $link); 
    $num_rows = mysql_num_rows($result); 

    return $num_rows; 
} 
} 
?> 

を忘れてしまった:

include 'statsclassfile.php'; 
$myStats = new stats(); 
$mystats->newReg(); 

PS:命名規則は、一般的に例えば、そのクラス名は大文字で始めたい:Stats

+0

あなたのコメントのためにありがとう。しかし、私は得ています致命的なエラー:行4の/home/default/helen/testStats.phpの非オブジェクトのメンバ関数newReg()を呼び出す

+0

の先頭に 'error_reporting(E_ALL); testStats.phpファイルを開き、なぜあなたのクラスをインスタンス化しないのかについての詳細を報告するかどうかを確認してください。 3つのファイル(config.php、testStats.phpと他のファイル)はすべて同じディレクトリにありますか? – Roman

+0

実際には、 '$ link'はグローバル空間で宣言されています。つまり、関数内でグローバルとして宣言することなく関数からアクセスすることはできません。この変更を含めるために私の答えを更新します。 (これはインクルードの問題とは関係ありません) – Roman

0

をパスが正しいことを確認してください。おそらく、config.phpファイルが同じフォルダにない可能性があります。

あなたはこの

require_once $_SERVER['DOCUMENT_ROOT'] . "/path_to_config/config.php"; 

のように絶対パスを使用することができますし、あなたの統計クラスを呼び出すために:

require_once PATH_TO_YOUR_CLASS . "stats.php" 

また、あなたはキャメル記法名を持つクラスに名前を付けることを確認してください。

関連する問題