3

ユーザーが結果を選択できる予測スコア スクリプトを作成しようとしています。

行の値をカウントしたい...たとえば、DBに9行が含まれ、6行が同じ値で他の3行が異なる場合..6つの同じ行から値を取得してそれらを合計したい. ありがとう。

コード:

<?php
include("connect.php");
?>

<html>
<head>
    <title>Score Predictions</title>
</head>
<body>

    <div id="id">
        <?php
            $query="SELECT * FROM test";
            $result=mysql_query($query);

            while($row=mysql_fetch_array($result)){     
                $id = $row['id'];
                $home = $row['home'];
                $away = $row['away'];
            }
        ?>
        <?php
            if (isset($_POST['submit'])){   
                $x = $_POST["test"];
                mysql_query("INSERT INTO test (home, away, score) VALUES ('$home', '$away', '$x')"); 
             }
        ?>
        <?php echo $home," - ",$away; ?>
        <form method='post' action='http://albsocial.us/test/index.php'>
            <select name='test'> 
                <option value="" selected='selected'></option>
                <option VALUE='1'>1</option>
                <option VALUE='X'>X</option>
                <option VALUE='2'>2</option>   
            </select>       
            <INPUT TYPE='submit' name='submit' />   
        </form>

        <?php       
            $query="SELECT * FROM test";
            $result=mysql_query($query);

            while($row=mysql_fetch_array($result)){
                $id = $row['id'];
                $score = $row['score'];

                if ($score = "1"){
                    echo "OK";
                }
            }
        ?>
    </div>
</body>
</html>
4

1 に答える 1

4

対処すべき点がいくつかあります。

DB スキーマ

あなたのテーブルは次のようになっていると思います:

id INT,
home VARCHAR,
away VARCHAR,
score VARCHAR

、、またはを含むことがscoreできます。スポーツ イベントの試合のホームvsアウェイの行があり、ユーザーはどちらが勝つかの投票を送信できます。これが正しくない場合は、質問を更新してください。12X

私のデータベースに9行があり、6行が同じ値を持ち、他の3行が異なる場合..6つの同じ行から値を取得し、それらを合計したいだけです

SELECT score, c FROM (
    SELECT score, count(score) as c FROM my_table GROUP BY count(score)
) as subselect
ORDER BY c DESC
LIMIT 1

これにより、最も投票数の多いスコアが得られます。説明なしで読んでいただけると幸いです。

phpのエラー

if ($score = "1"){

間違っています。必要な比較を行うには:

if ($score == "1"){

他のphpエラー

$home$awaywhile ループの設定方法により、INSERT常に db テーブルの最後の行の値に設定されます。ここで何をするつもりだったのかわかりませんが、これは指摘する価値があります。

ここからは、このコード全体で実際に何をしようとしているのかわかりません。これは、あなたが書いたものから私が知ることができる限りです。

于 2013-06-12T23:20:26.873 に答える