douyoufan7881 2016-01-24 06:53
浏览 10

不能使用MysqlResultSet类型的对象

i had a problem in php install.php file Cannot use object of type MysqlResultSet i dont know why is my code not working

and this is my code

    $this->provider->executeQuery('INSERT INTO perfect SET type="kings", name="%s", email="%s", points="%s", p_date="%s"',
                                  array($get_players['name'], $get_players['email'], 0, date('Y.m.d'))
      );

any idea ?

  • 写回答

1条回答 默认 最新

  • dsk49208 2016-01-24 07:03
    关注

    full code is

    public function _isperfect()
    {
        // attackers
        $count_attackers  = 0;
        $attackers_points = 0;
        $attackers = $this->provider->fetchResultSet( "SELECT points FROM perfect WHERE type='attackers' ORDER BY points DESC LIMIT 3");
        while ( $attackers->next( ) )
        {
            $attackers_points = $attackers->row['points'];
            $count_attackers++;
        }
    
        if($count_attackers < 3)
        {
            $attackers_points = 0;
        }
    
        $get_players = $this->provider->fetchResultSet('SELECT name, email, attack_points FROM p_players WHERE attack_points > %s', array($attackers_points));
        while ( $get_players->next( ) )
        {
            $get_att = $this->provider->fetchRow("SELECT points FROM perfect WHERE type='attackers' && email='". $get_players->row['email'] ."'");
            if($get_att != NULL && $get_att['points'] < $get_players->row['attack_points'])
            {
                $this->provider->executeQuery('DELETE FROM perfect WHERE type="attackers" && email="'. $get_players->row['email'] .'"');
            }
            if($get_att['points'] < $get_players->row['attack_points'] || $get_att == null)
            {
                $this->provider->executeQuery('INSERT INTO perfect SET type="attackers", name="%s", email="%s", points="%s", p_date="%s"',
                                              array($get_players->row['name'], $get_players->row['email'], $get_players->row['attack_points'], date('Y.m.d'))
                  );
    
            }
        }
    
    
        $att = 0;
        $attack = $this->provider->fetchResultSet( "SELECT points FROM perfect WHERE type='attackers' ORDER BY points DESC LIMIT 3");
        while ( $attack->next( ) )
        {
            $att = $attack->row['points'];
        }
        $this->provider->executeQuery('DELETE FROM perfect WHERE points < %s && type="attackers"', array($att));
    
        // end attackers
    
    
        // defenders
        $count_defenders  = 0;
        $defenders_points = 0;
        $defenders = $this->provider->fetchResultSet( "SELECT points FROM perfect WHERE type='defenders' ORDER BY points DESC LIMIT 3");
        while ( $defenders->next( ) )
        {
            $defenders_points = $defenders->row['points'];
            $defenders_points++;
        }
    
        if($count_defenders < 3)
        {
            $defenders_points = 0;
        }
    
        $get_players = $this->provider->fetchResultSet('SELECT name, email, defense_points FROM p_players WHERE defense_points > %s', array($defenders_points));
        while ( $get_players->next( ) )
        {
            $get_def = $this->provider->fetchRow("SELECT points FROM perfect WHERE type='defenders' && email='". $get_players->row['email'] ."'");
            if($get_def != NULL && $get_def['points'] < $get_players->row['defense_points'])
            {
                $this->provider->executeQuery('DELETE FROM perfect WHERE type="defenders" && email="'. $get_players->row['email'] .'"');
            }
            if($get_def['points'] < $get_players->row['defense_points'] || $get_def == null)
            {
                $this->provider->executeQuery('INSERT INTO perfect SET type="defenders", name="%s", email="%s", points="%s", p_date="%s"',
                                              array($get_players->row['name'], $get_players->row['email'], $get_players->row['defense_points'], date('Y.m.d'))
                  );
            }
        }
    
    
        $def = 0;
        $defend = $this->provider->fetchResultSet( "SELECT points FROM perfect WHERE type='defenders' ORDER BY points DESC LIMIT 3");
        while ( $defend->next( ) )
        {
            $def = $defend->row['points'];
        }
        $this->provider->executeQuery('DELETE FROM perfect WHERE points < %s && type="defenders"', array($def));
    
        // end defenders
    
    
        // empires
        $count_empires  = 0;
        $empires_points = 0;
        $empires = $this->provider->fetchResultSet( "SELECT points FROM perfect WHERE type='empires' ORDER BY points DESC LIMIT 3");
        while ( $empires->next( ) )
        {
            $empires_points = $empires->row['points'];
            $count_empires++;
        }
    
        if($count_empires < 3)
        {
            $empires_points = 0;
        }
    
        $get_players = $this->provider->fetchResultSet('SELECT name, email, total_people_count FROM p_players WHERE total_people_count > %s', array($empires_points));
        while ( $get_players->next( ) )
        {
            $get_emp = $this->provider->fetchRow("SELECT points FROM perfect WHERE type='empires' && email='". $get_players->row['email'] ."'");
            if($get_emp != NULL && $get_emp['points'] < $get_players->row['total_people_count'])
            {
                $this->provider->executeQuery('DELETE FROM perfect WHERE type="empires" && email="'. $get_players->row['email'] .'"');
            }
            if($get_emp['points'] < $get_players->row['total_people_count'] || $get_emp == null)
            {
                $this->provider->executeQuery('INSERT INTO perfect SET type="empires", name="%s", email="%s", points="%s", p_date="%s"',
                                              array($get_players->row['name'], $get_players->row['email'], $get_players->row['total_people_count'], date('Y.m.d'))
                  );
            }
        }
    
    
        $emp = 0;
        $empir = $this->provider->fetchResultSet( "SELECT points FROM perfect WHERE type='empires' ORDER BY points DESC LIMIT 3");
        while ( $empir->next( ) )
        {
            $emp = $empir->row['points'];
        }
    
        $this->provider->executeQuery('DELETE FROM perfect WHERE points < %s && type="empires"', array($emp));
    
        // end empires
    
        // looters
        $count_looters  = 0;
        $looters_points = 0;
        $looters = $this->provider->fetchResultSet( "SELECT points FROM perfect WHERE type='looters' ORDER BY points DESC LIMIT 3");
        while ( $looters->next( ) )
        {
            $looters_points = $looters->row['points'];
            $count_looters++;
        }
    
        if($count_looters < 3)
        {
            $looters_points = 0;
        }
    
        $get_players = $this->provider->fetchResultSet('SELECT name, email, thief_points FROM p_players WHERE thief_points > %s', array($looters_points));
        while ( $get_players->next( ) )
        {
            $get_loo = $this->provider->fetchRow("SELECT points FROM perfect WHERE type='looters' && email='". $get_players->row['email'] ."'");
            if($get_loo != NULL && $get_loo['points'] < $get_players->row['thief_points'])
            {
                $this->provider->executeQuery('DELETE FROM perfect WHERE type="looters" && email="'. $get_players->row['email'] .'"');
            }
            if($get_loo['points'] < $get_players->row['thief_points'] || $get_loo == null)
            {
                $this->provider->executeQuery('INSERT INTO perfect SET type="looters", name="%s", email="%s", points="%s", p_date="%s"',
                                              array($get_players->row['name'], $get_players->row['email'], $get_players->row['thief_points'], date('Y.m.d'))
                  );
            }
        }
    
    
        $loo = 0;
        $loote = $this->provider->fetchResultSet( "SELECT points FROM perfect WHERE type='looters' ORDER BY points DESC LIMIT 3");
        while ( $loote->next( ) )
        {
            $loo = $loote->row['points'];
        }
        $this->provider->executeQuery('DELETE FROM perfect WHERE points < %s && type="looters"', array($loo));
    
        // end looters
    
    
        // kings
        $end_server          = $this->provider->fetchRow( "SELECT win_pid, game_over FROM `g_settings`");
        $end_server_player   = $this->provider->fetchRow( 'SELECT `name`,`email` FROM  `p_players` WHERE id='.$end_server['win_pid'].' ');
        if($end_server_player != null)
        {
            $this->provider->executeQuery('INSERT INTO perfect SET type="kings", name="%s", email="%s", points="%s", p_date="%s"',
                                          array($get_players['name'], $get_players['email'], 0, date('Y.m.d'))
              );
        }
    }
    
    评论

报告相同问题?

悬赏问题

  • ¥17 pro*C预编译“闪回查询”报错SCN不能识别
  • ¥15 微信会员卡接入微信支付商户号收款
  • ¥15 如何获取烟草零售终端数据
  • ¥15 数学建模招标中位数问题
  • ¥15 phython路径名过长报错 不知道什么问题
  • ¥15 深度学习中模型转换该怎么实现
  • ¥15 HLs设计手写数字识别程序编译通不过
  • ¥15 Stata外部命令安装问题求帮助!
  • ¥15 从键盘随机输入A-H中的一串字符串,用七段数码管方法进行绘制。提交代码及运行截图。
  • ¥15 TYPCE母转母,插入认方向