3

我正在尝试制作一个预测分数脚本,用户可以在其中选择一个结果。

我想计算行的值...例如,如果在我的数据库中包含 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

有几点需要解决:

数据库模式

我假设您的表格如下所示:

id INT,
home VARCHAR,
away VARCHAR,
score VARCHAR

其中score可以包含1,2X. 看起来您有几排体育赛事的主场客场比赛,用户可以在其中提交他们的投票决定谁会获胜。如果这不正确,请更新您的问题。

如果在我的数据库中有 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并且$awayin theINSERT将始终设置为您的 db 表中最后一行的值,因为您的 while 循环是如何设置的。我不确定你在这里的意思是什么,但这值得指出。

从这里开始,我不知道您实际上打算对所有这些代码做什么。从您写的内容中我可以看出这一点。

于 2013-06-12T23:20:26.873 回答