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'].'';
}
}
?>

DB接続;

<?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 に答える