0
我想调用mysql prepare语句并卡在php错误中。在php中调用mysql存储过程
“致命错误:调用一个成员函数准备()在C语言的非对象:\瓦帕\ WWW \学习\ mysqlsp.php第7行”
代码:
include 'connect_db.php';
$dbclass=new db_connector();
$dbh=$dbclass->getDBH();
$stmt=$dbh->prepare("CALL callavg('city','population'");
$stmt->execute();
$ dbh是一个有效的mysql资源链接。我已经定义了一个DB连接器类,以便$ dbh的作用域问题得到解决,但我仍然无法更正此错误。
请帮忙。
感谢
@Benjamin Morel :)我的坏。用mysql_query()替换prepare()并不能解决我的问题。你能不能让我知道我们可以使用mysql_query()来运行preparedstaements。例如:mysql_query(“CALL callavg('city','population'”); – user269867 2011-06-13 06:52:09
准备好的语句和存储过程是不一样的[Prepared statements](http://php.net/manual/en/pdo.prepared- (CALL callavg(“city”,“population”)',$ dbh);这个函数可以用来预编译一个查询,然后绑定它的参数。 ' – Benjamin 2011-06-13 06:58:17
让我把它正确的,我有一个存储过程在MySQL [calavg],我试图通过mysql_query()直接从PHP调用,但mysql_query返回false。 – user269867 2011-06-13 07:06:51