0

私がこれを行っている方法では一貫性のない結果が得られているので、ここの天才にあなたの考えを聞いてみようと思いました. これが私がやっていることです...

$ccquerycount = "SELECT COUNT(*) as `count` FROM payments_cc_info WHERE user_id=$userid";
....
....
if ($row['count'] == "1") {
} else {
}

一貫した結果を得るために if ステートメントを設計するより良い方法はありますか?

4

3 に答える 3

0

これを試して

  $ccquerycount = "SELECT * FROM payments_cc_info WHERE user_id=$userid";
    $result = mysql_query($ccquerycount)
    if (mysql_num_rows($result)==1) {
    } else {
    }

mysql_num_rows() 結果の行数を取得

警告 mysql_ 拡張子は非推奨です。代わりに、MySQLi または PDO_MySQL 拡張機能を使用する必要があります。

于 2013-01-03T03:25:02.617 に答える
0

クエリを実行し、結果セットを取得し、行をフェッチし、if ステートメントの前に値を抽出していると想定しています (そうでない場合は、まずそれを行う必要があります! PHP-MySql の開始は次のとおりです。

すでにそれを行っていて、投稿でこれについて言及するのを忘れた場合(私はいつも有罪と証明されるまでは無実です!! :))、一貫性のない結果が得られた場合のさまざまなデータセットについて、さらにデータを提供していただけますか?

于 2013-01-03T03:25:02.577 に答える
0

以下のように、mysql クエリ内に if 条件を追加することもできます。

SELECT 
   rating,
   trade_service_id,
   ifnull(round(sum(belonging_product_ratings.rating)/count(*),0),0) AS avg,
   count(*) AS count
FROM
   belonging_product_ratings WHERE trade_service_id != 0
GROUP BY
   belonging_product_ratings.trade_service_id

他の代替手段は以下の通りです

select
   BelongingProductRating.*,
   User.*
from
   belonging_product_ratings AS BelongingProductRating
LEFT OUTER JOIN
   users AS User ON
   IF( BelongingProductRating.rated_user_id != '$userID', BelongingProductRating.rated_user_id, BelongingProductRating.user_id) = User.id

mysqlクエリ内の条件が三項ifと同じであると言えます。
PHP変数に従ってクエリを設定することもできます。

私は最終的にこのコードを共有しています。テーブルのフィールドと条件に従って設定するだけです。遠慮なく尋ねてください。

于 2013-01-03T04:10:08.840 に答える