我需要使用单例数据库连接查询关联数组中的表并获取错误
注意:未定义的变量:第10行的C:\ xampp \ htdocs \ SOBCASHIER \ resources \ templates \ loginmodel.php中的id
注意:未定义的变量:第10行的C:\ xampp \ htdocs \ SOBCASHIER \ resources \ templates \ loginmodel.php中的名称
注意:未定义的变量:第10行的C:\ xampp \ htdocs \ SOBCASHIER \ resources \ templates \ loginmodel.php中的loc
警告:mysqli_stmt :: fetch()需要0个参数,3在第10行的C:\ xampp \ htdocs \ SOBCASHIER \ resources \ templates \ loginmodel.php中给出
注意:第12行的C:\ xampp \ htdocs \ SOBCASHIER \ resources \ templates \ loginmodel.php中的数组到字符串转换 阵列
我的db.config.php
define ('HOST','localhost');
define ('USER','garodamas_mon');
define ('PASSWORD','r0d4m45');
define ('DATABASE','garodamas_cashrcv');
class Database{
private $DBH;
private static $singleton;
protected function __construct(){
$this->DBH=new mysqli(HOST,USER,PASSWORD,DATABASE);
}
public static function instance(){
if (!(self::$singleton instanceof self)) {
self::$singleton = new self();
}
return self::$singleton;
}
public static function get(){
return self::instance()->DBH;
}
private function __wake(){}
private function __clone(){}
}
和我的loginmodel.php
<?php
require_once '../db.config.php';
$get=Database::get()->prepare('SELECT user_id, user_name, user_dept FROM mst_user');
$get->execute();
$row = array();
$get->fetch($id, $name, $loc);
while($get->fetch()){
print($row);
}
我不知道我的错误在哪里。 mst_user有3列。请帮帮我..谢谢
答案 0 :(得分:1)
prepare()
语句返回false,因为存在错误。
mysqli_prepare()返回一个语句对象,如果发生错误,则返回FALSE。
尝试
new mysqli(HOST,USER,PASSWORD,DATABASE)->prepare('badsql')->execute();
然后修复badsql
。
答案 1 :(得分:1)
require_once '../db.config.php';
$get=Database::get()->prepare('SELECT user_id, user_name, user_dept FROM mst_user');
$get->execute();
与PDO:
while ($row = $get->fetch(PDO::FETCH_NUM)) {
$data = $row[0] . "\t" . $row[1] . "\t" . $row[2] . "\n";
print $data;
}
使用Mysqli:
$get->bind_result($id,$name,$loc);
while ($get->fetch()) {
print ($id, $name, $code);
}