私はデータベースのすべての値を返すクエリメソッドを呼び出すfind_allの静的メソッドを呼び出すUserデータベースをコーディングしていましたが、 mysqli_query()はmysqliであると想定しているので、C:\ xampp \ htdocs \ photogallery \ includes \ database.phpを20行目に入れています。私は何をしますか?ここでは、コードスニペット User.phpであるphp mysqli queryはパラメータ1が文字列になることを期待しています
require_once("database.php");
class User{
public static function find_all(){
global $database;
$sql= "select * from users";
$result_set = $database->query($sql);
return $result_set;
}
public static function find_by_id($id=0){
global $database;
$result_set = $database->query("SELECT FROM users where id={$id}");
$found = $database->fetch_array($result_set);
return $found;
}
}
database.phpで
public function query($sql){
echo $sql;
$this->last_query = $sql;
echo $result = mysqli_query($sql,$this->connection);
$this->confirm_query($result);
return $result;
}
public function confirm_query($result){
if(!$result){
die("Database query failed:".mysqli_error());
}
}
と次のようにコードが呼び出されるのindex.php:
<?php
require_once("../includes/database.php");
require_once("../includes/user.php");
$q = User::find_all();
?>
たびにエラーmysqli_queryはパラメータ1がmysqliであると想定しているので、C:\ xampp \ htdocs \ photogallery \ includes \ database.phpに20行目の文字列を入れてください。
使用 'mysqli_query(の$ this - >接続、$ sqlを);'ファーストパラメータは「接続変数」で、第2は「クエリ変数」です。 – RJParikh