php报预计参数为1,php – 警告:mysqli_query()期望参数1为mysqli,中给出的对象

参见英文答案 >

mysql_fetch_array()/mysql_fetch_assoc()/mysql_fetch_row()/mysql_num_rows etc… expects parameter 1 to be resource                                    31个

嗨我想尝试将mysql更改为mysqli但我的脚本无效.改成mysqli之后

为database.php

include("constants.php");

class MySQLDB

{

var $connection; //The MySQL database connection

var $num_active_users; //Number of active users viewing site

var $num_active_guests; //Number of active guests viewing site

var $num_members; //Number of signed-up users

/* Note: call getNumMembers() to access $num_members! */

/* Class constructor */

function MySQLDB(){

/* Make connection to database */

$this->connection= mysqli_connect(DB_SERVER, DB_USER, DB_PASS,DB_NAME);

// Check connection

if (mysqli_connect_errno())

{

echo "Failed to connect to MySQL: " . mysqli_connect_error();

}

$this->num_members = -1;

if(TRACK_VISITORS){

/* Calculate number of users at site */

$this->calcNumActiveUsers();

/* Calculate number of guests at site */

$this->calcNumActiveGuests();

}

}

function confirmUserPass($username, $password){

/* Add slashes if necessary (for query) */

if(!get_magic_quotes_gpc()) {

$username = addslashes($username);

}

/* Verify that user is in database */

$q = "SELECT password FROM ".TBL_USERS." WHERE username = '$username'";

$result = mysqli_query($this->connection,$q);

if(!$result || (mysqli_num_rows($result) < 1)){

return 1; //Indicates username failure

}

/* Retrieve password from result, strip slashes */

$dbarray = mysqli_fetch_array($result);

$dbarray['password'] = stripslashes($dbarray['password']);

$password = stripslashes($password);

/* Validate that password is correct */

if($password == $dbarray['password']){

return 0; //Success! Username and password confirmed

}

else{

return 2; //Indicates password failure

}

}

function confirmUserID($username, $userid){

/* Add slashes if necessary (for query) */

if(!get_magic_quotes_gpc()) {

$username = addslashes($username);

}

/* Verify that user is in database */

$q = "SELECT userid FROM ".TBL_USERS." WHERE username = '$username'";

$result = mysqli_query($this->connection,$q);

if(!$result || (mysqli_num_rows($result) < 1)){

return 1; //Indicates username failure

}

/* Retrieve userid from result, strip slashes */

$dbarray = mysqli_fetch_array($result);

$dbarray['userid'] = stripslashes($dbarray['userid']);

$userid = stripslashes($userid);

/* Validate that userid is correct */

if($userid == $dbarray['userid']){

return 0; //Success! Username and userid confirmed

}

else{

return 2; //Indicates userid invalid

}

}

function usernameTaken($username){

if(!get_magic_quotes_gpc()){

$username = addslashes($username);

}

$q = "SELECT username FROM ".TBL_USERS." WHERE username = '$username'";

$result = mysqli_query($this->connection,$q);

return (mysqli_numrows($result) > 0);

}

function usernameBanned($username){

if(!get_magic_quotes_gpc()){

$username = addslashes($username);

}

$q = "SELECT username FROM ".TBL_BANNED_USERS." WHERE username = '$username'";

$result = mysqli_query($this->connection,$q);

return (mysqli_numrows($result) > 0);

}

function addNewUser($username, $password, $email){

$time = time();

/* If admin sign up, give admin user level */

if(strcasecmp($username, ADMIN_NAME) == 0){

$ulevel = ADMIN_LEVEL;

}else{

$ulevel = USER_LEVEL;

}

$q = "INSERT INTO ".TBL_USERS." VALUES ('$username', '$password', '0', $ulevel, '$email', $time)";

return mysqli_query($this->connection,$q);

}

function updateUserField($username, $field, $value){

$q = "UPDATE ".TBL_USERS." SET ".$field." = '$value' WHERE username = '$username'";

return mysqli_query($this->connection,$q);

}

function getUserInfo($username){

$q = "SELECT * FROM ".TBL_USERS." WHERE username = '$username'";

$result = mysqli_query($this->connection,$q);

/* Error occurred, return given name by default */

if(!$result || (mysqli_num_rows($result) < 1)){

return NULL;

}

/* Return result array */

$dbarray = mysqli_fetch_array($result);

return $dbarray;

}

function getNumMembers(){

if($this->num_members < 0){

$q = "SELECT * FROM ".TBL_USERS;

$result = mysqli_query($this->connection,$q);

$this->num_members = mysqli_num_rows($result);

}

return $this->num_members;

}

function calcNumActiveUsers(){

/* Calculate number of users at site */

$result = mysqli_query($this->connection,"SELECT * FROM ".TBL_ACTIVE_USERS);

$this->num_active_users = mysqli_num_rows($result);

}

function calcNumActiveGuests(){

/* Calculate number of guests at site */

$q = "SELECT * FROM ".TBL_ACTIVE_GUESTS;

$result = mysqli_query($this->connection,$q);

$this->num_active_guests = mysqli_num_rows($result);

}

function addActiveUser($username, $time){

$q = "UPDATE ".TBL_USERS." SET timestamp = '$time' WHERE username = '$username'";

mysqli_query($this->connection,$q);

if(!TRACK_VISITORS) return;

$q = "REPLACE INTO ".TBL_ACTIVE_USERS." VALUES ('$username', '$time')";

mysqli_query($this->connection,$q);

$this->calcNumActiveUsers();

}

/* addActiveGuest - Adds guest to active guests table */

function addActiveGuest($ip, $time){

if(!TRACK_VISITORS) return;

$q = "REPLACE INTO ".TBL_ACTIVE_GUESTS." VALUES ('$ip', '$time')";

mysqli_query($this->connection,$q);

$this->calcNumActiveGuests();

}

function removeActiveUser($username){

if(!TRACK_VISITORS) return;

$q = "DELETE FROM ".TBL_ACTIVE_USERS." WHERE username = '$username'";

mysqli_query($this->connection,$q);

$this->calcNumActiveUsers();

}

function removeActiveGuest($ip){

if(!TRACK_VISITORS) return;

$q = "DELETE FROM ".TBL_ACTIVE_GUESTS." WHERE ip = '$ip'";

mysqli_query($this->connection,$q);

$this->calcNumActiveGuests();

}

function removeInactiveUsers(){

if(!TRACK_VISITORS) return;

$timeout = time()-USER_TIMEOUT*60;

$q = "DELETE FROM ".TBL_ACTIVE_USERS." WHERE timestamp < $timeout";

mysqli_query($this->connection,$q);

$this->calcNumActiveUsers();

}

/* removeInactiveGuests */

function removeInactiveGuests(){

if(!TRACK_VISITORS) return;

$timeout = time()-GUEST_TIMEOUT*60;

$q = "DELETE FROM ".TBL_ACTIVE_GUESTS." WHERE timestamp < $timeout";

mysqli_query($this->connection,$q);

$this->calcNumActiveGuests();

}

function query($query){

return mysqli_query($this->connection,$query);

}

};

/* Create database connection */

$database = new MySQLDB;

?>

的index.php

include("include/database.php");

$result = mysqli_query($database,"SELECT * FROM users");

while($row = mysqli_fetch_array($result))

{

echo $row['username'] . " " . $row['achternaam'];

echo "
";

}

mysqli_close($database);

?>

我遇到的错误是:

Warning: mysqli_query() expects parameter 1 to be mysqli, object given in C:\xampp\htdocs\follow\index.php on line 4

Warning: mysqli_fetch_array() expects parameter 1 to be mysqli_result, null given in C:\xampp\htdocs\follow\index.php on line 6

Warning: mysqli_close() expects paramet er 1 to be mysqli, object given in C:\xampp\htdocs\follow\index.php on line 12

我知道我不能使用$this->连接外部函数并尝试使用GLOBAL $连接,但也无法正常工作?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值