douchen4915 2016-04-22 16:24
浏览 104
已采纳

尝试获取行数时,PDO上的fetchColumn错误

I'm trying to move to PDO.

I want to do a classic query for checking number of rows, in mysql I would have done mysql_num_rows_result but I've read somewhere that in PDO it does not work.

So I've tried with a fetch column using the following code :

global $bdd;
            $login = $bdd->query("SELECT
                   COUNT
                    FROM spb_clients_acces_compte,
                         spb_clients_infos_generales
                    WHERE spb_clients_acces_compte.spb_clients_acces_compte_e_mail = '{$email}'
                    AND spb_clients_acces_compte.spb_clients_acces_compte_pwd_md5 = '{$pass}'
                    AND spb_clients_acces_compte.spb_clients_acces_compte_admin = 1");
            $reponse = $bdd->fetchColumn();
            if ($reponse == 0):

            elseif ($reponse == 1):

            else:
            endif;
            var_dump($reponse);

This return to me :

( ! ) Fatal error: Call to undefined method PDO::fetchColumn() in C:\wamp\www\spb2016\admin\core\login.php on line 20

Line 20 is : $reponse = $bdd->fetchColumn();

I've tried many things with no success

Anykind of help will be much appreciated.

  • 写回答

1条回答 默认 最新

  • douzhunlan5930 2016-04-22 16:43
    关注

    First of all, you need to add a column to your COUNT function. COUNT is a mysql function that returns the number of whatever parameter you pass it, so COUNT(id) would work.

    Second, you must use the PDOStatement in order to fetch results. Replace

    $reponse = $bdd->fetchColumn();
    

    with

    $reponse = $login->fetchColumn();
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 微信会员卡等级和折扣规则
  • ¥15 微信公众平台自制会员卡可以通过收款码收款码收款进行自动积分吗
  • ¥15 随身WiFi网络灯亮但是没有网络,如何解决?
  • ¥15 gdf格式的脑电数据如何处理matlab
  • ¥20 重新写的代码替换了之后运行hbuliderx就这样了
  • ¥100 监控抖音用户作品更新可以微信公众号提醒
  • ¥15 UE5 如何可以不渲染HDRIBackdrop背景
  • ¥70 2048小游戏毕设项目
  • ¥20 mysql架构,按照姓名分表
  • ¥15 MATLAB实现区间[a,b]上的Gauss-Legendre积分