调用未定义的方法PHP错误
问题描述:
我有一个叫CHCID类在其内部具有两个功能:调用未定义的方法PHP错误
public function UpdateDeliveryAddress($orderNumber, $deliveryaddress) {
$sql = "UPDATE `CIDOrders`
SET `DeliveryAddress` = '" . mysql_real_escape_string($deliveryaddress) . "'
WHERE `CIDOrderNumber` = " . $orderNumber . ";";
mysql_select_db(DB_DATABASE_NAME, $this->conn);
return mysql_query($sql, $this->conn);
}
public function UpdateInvoiceAddress($orderNumber, $invoiceAddress) {
$sql = "UPDATE `CIDOrders`
SET `InvoiceAddress` = '" . mysql_real_escape_string($invoiceaddress) . "'
WHERE `CIDOrderNumber` = " . $orderNumber . ";";
mysql_select_db(DB_DATABASE_NAME, $this->conn);
return mysql_query($sql, $this->conn);
}
我调用这个类中有一个网页叫做createorder.php如下:
// Add a new delivery address to the order
$cid->UpdateDeliveryAddress($_POST['orderNumber'], $_POST['deliveryaddress']);
// Add invoice address to the order
$cid->UpdateInvoiceAddress($_POST['orderNumber'], $_POST['invoiceaddress']);
我收到以下错误:
PHP Fatal error: Call to undefined method CHCID::UpdateDeliveryAddress()
任何人都可以帮忙。
非常感谢
初始化类的代码。
require_once $CID_INCLUDE_PATH . "/cid.php";
$cid = new CHCID();
建设类
class CHCID {
var $conn;
// Constructor, connect to the database
public function __construct() {
require_once "/var/www/reporting/settings.php";
if(!$this->conn = mysql_connect(DB_HOST, DB_USERNAME, DB_PASSWORD)) die(mysql_error());
if(!mysql_select_db(DB_DATABASE_NAME, $this->conn)) die(mysql_error());
}
答
如果这些功能真的在你的班级,这永远不会发生。
检查$CID_INCLUDE_PATH
,你可能正在加载一个不同的文件,也许是一个旧版本的类。还可以启用警告,通知...
+0
是的,它指向另一个文件。谢谢你的帮助。 –
+0
@ user969733:接受答案,以便其他人知道问题已解决。 –
您是否在'$ cid-> UpdateDeliveryAddress()'之前放置了'$ cid = New CHCID();'? '$ cid'不是没有被声明的对象。 – Bojangles
是在页面顶部//并创建一个cid对象 \t require_once $ CID_INCLUDE_PATH。 “/cid.php”; \t $ cid = new CHCID(); –
你是否正在实例化类“CHCID”的对象?我认为'$ cid'是什么,但能够看到实例化会很高兴。 –