Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/43.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 选择标识符并显示其中的行/列_Php_Iphone_Mysql_Sql - Fatal编程技术网

Php 选择标识符并显示其中的行/列

Php 选择标识符并显示其中的行/列,php,iphone,mysql,sql,Php,Iphone,Mysql,Sql,可能重复: 我的问题是: $sql = "SELECT * FROM $table WHERE "; switch($type) { case "global": $sql .= "1 "; break; case "device": $sql .= "udid = '$udid' "; break; case "name":

可能重复:

我的问题是:

$sql = "SELECT * FROM $table WHERE ";

    switch($type) {
        case "global":
            $sql .= "1 ";
            break;
        case "device":
            $sql .= "udid = '$udid' ";
            break;
        case "name":
            $sql .= "name = '$name' ";
            break;
    }

    $sql .= "ORDER BY $sort ";
    $sql .= "LIMIT $offset,$count ";

    $result = mysql_query($sql,$conn);
udid是唯一的标识符。循环:

 while ($row = mysql_fetch_object($result)) {
                echo '<tr>
                        <td>
                        '.$rank.' 
                        </td>
                                                <td>
                        '.$row->name.'
                        </td>
                        <td>
                        '.$row->score.'
                        </td>
                                        <td>
                        '.$row->udid.'
                        </td>

                      </tr>';
                                 $rank++;
            }
这很好,但是如果我想显示基于udid的分数和排名,那么如果我想要udid:119d62e398bf6f1cea89b235b5c8ecf95255442e,我想要排名2,名字john和分数2.41940

我该怎么做

Joe

获取使用udid查询的行的分数,并使用以下查询获得排名

$sql = "SELECT Count(*) FROM $table WHERE score < '$score'";
$sql=“从得分<'$score''的$table中选择Count(*);

排名将是从上述查询返回的值+1

如果运行相同的查询,但将
限制$offset,$count
更改为
限制“($offset+$rank)。”,1
?或实际上
($offset+$rank-1)
$sql = "SELECT Count(*) FROM $table WHERE score < '$score'";