Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
370 views
in Technique[技术] by (71.8m points)

php - Getting undefined index while fetching column value from mysql

I have the following code :

$sql = 'select count(*) from match as count where match_status != :status';
      $query = $con->prepare($sql);
      $query->bindValue(':status',LOST,PDO::PARAM_INT);
      $query->execute();
      $row = $query->fetch(PDO::FETCH_ASSOC);

      if(!empty($row))
        $row_count = $row['count'];
      else
        $row_count = 0;

I am getting Notice: Undefined index: count

What's the mistake?

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

You created the alias for the wrong thing. This should work:

SELECT count(*) as count FROM `match` WHERE match_status != :status
                 //^^^^^ Alias for 'count(*)' NOT for your table name

Also you have to put ` around keywords/Mysql reserved words e.g. match: http://dev.mysql.com/doc/refman/5.6/en/reserved-words.html

And if you turn on error mode then you also get an error for this, just put it right after your connection:

$con->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);  

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...