Вот пример кода, который я пытаюсь вызвать с другой страницы, чтобы помочь мне со статистикой. Кажется, я не могу заставить его работать. Как импортировать и вызывать этот класс в другом php-файле? stats.php
<?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 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()); ?>
-<?php require_once("stats.php"); echo(stats.newReg()); ?>
Здесь что-то не хватает?
вы забыли 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; } } ?>
в<?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
Убедитесь, что пути верны, возможно, файл config.php находится не в той же папке.
Вы можете использовать абсолютные пути, подобные этому
require_once $_SERVER['DOCUMENT_ROOT'] . "/path_to_config/config.php";
И чтобы назвать свой класс статистики:
require_once PATH_TO_YOUR_CLASS . "stats.php"
Также убедитесь, что вы называете классы именами CamelCased.