0

我有从数据库调用存储过程的 PHP 代码。

<?php
include("DataBase.php");
$sql=$mysqli_query("CALL sp()");
if( $sql === FALSE ) {
trigger_error('Query failed returning error: '. $mysqli_error(),E_USER_ERROR);
} else {
while($row=$mysqli_fetch_array($sql))
{
echo $row['id'].'--'.$row['item'].'';
}
}
?>

数据库连接;

<?php
$mysqli_hostname = "localhost";
$mysqli_user = "root";
$mysqli_password = "";
$mysqli_database = "liveedit";
$bd = $mysqli_connect($mysqli_hostname, $mysqli_user, $mysqli_password) 
or die("Opps some thing went wrong");
$mysqli_select_db($mysqli_database, $bd) or die("Opps some thing went wrong");
?>

代码返回此错误:

Fatal error: Function name must be a string in C:\xampp\htdocs\ambot\database.php on line 6

代码有什么问题?我试图解决这个问题,但是在我的代码中使用存储过程来解决这个问题会增加困难。

4

1 回答 1

0

您的代码在我的机器上运行良好。

您可以尝试切换mysqli_*扩展名,至少出于测试目的。为此,以这种方式更改您的代码,并确保您的连接信息正确(主机、用户名、密码、数据库名称)。

<?php
//include("DataBase.php");

$db = mysqli_connect("localhost","user","password", "dbname");
if (!$db) {
    die('Could not connect: ' . mysqli_error());
}

$sql = mysqli_query($db, "CALL sp()");
if( $sql === FALSE ) {
   die('Query failed returning error: '. mysqli_error());
} else {
       while($row=mysqli_fetch_array($sql))
       {
        echo $row['id']. "<br>";
       }
   }
?>
于 2013-03-10T07:25:21.320 回答