2016-04-10 10 views
0

PDOで書かれたスクリプトがあり、ユーザが持っているメッセージの量を取得して表示します。私の問題は、金額を表示していないことです。PDOデータベースからの行数を取得する

ここに私のコードです:あなたはselect文で行リターンの何を計算したいない場合

<?php 
$con = new PDO("mysql:host=localhost;dbname=dbname", dbuser, dbpass); 
$username = $_GET['username']; 
$messages = $stmt = $con->prepare("SELECT NULL FROM messages WHERE username=:username"); 
$stmt->bindParam(':username', $username); 
$stmt->execute(); 
$row = $stmt->fetch(); 
echo $messages; 
?> 
+0

'SELECT NULL'は「ヌル選び意味"別名"は値を選択しない "。クエリでNull値のセットが返されます。 – fusion3k

+0

行数はどのようにして選択できますか? –

+0

'SELECT *'を使用してすべてのフィールドを選択し、 'SELECT username、fieldname1、etc ...'はいくつかのフィールドを選択し、 'SELECT COUNT(*)AS tot'は合計行数を選択します。 – fusion3k

答えて

-2

使用をrowCount()関数 -

<?php 
$con = new PDO("mysql:host=localhost;dbname=dbname", dbuser, dbpass); 
$username = $_GET['username']; 
$messages = $stmt = $con->prepare("SELECT field1,field2 FROM messages WHERE username=:username"); 
$stmt->bindParam(':username', $username); 
$stmt->execute(); 
$total = $stmt->rowCount(); 
echo $total; 
?> 
+0

この機能についてのphp.netのマニュアルページのエントリを読んだことがありますか? SELECTステートメントでは機能しません。あなたが-1がどこから来たのか疑問に思っている場合は、完全に間違った答えを投稿したからです。 –

+0

はい@ NB私はそれを読んでいます。これは[PDOマニュアル](http://php.net/manual/en/pdostatement.rowcount.php)のリンクです。 –

+0

決して行数をカウントするためにrowcountを使用しないでください。 –

関連する問題