我见过其他人遇到过这个问题,但我见过的解决方案并没有帮助我,或者我不知道如何使用它们:P
<?php
$ordre = "nom";
$croissance = "ASC";
if(isset($_GET["ordre"])){
$ordre = $_GET["ordre"];
};
if(isset($_GET["croissance"])){
$croissance = $_GET["croissance"];
};
$con = mysql_connect('localhost','root','');
mysql_select_db('sdj_jeux', $con);
$sql = "SELECT * FROM jeux ORDER BY $ordre $croissance";
$result = mysql_query($sql, $con);
$row = mysql_fetch_array($result);
$couleurcompteur = 0;
while ($row = mysql_fetch_array($result)){
$couleurcompteur += 1;
if($couleurcompteur % 2){
$classe = "pale";
} else {
$classe = "fonce";
};
?>
我的代码正在跳过数据库的第一行,我不明白为什么。
答案 0 :(得分:10)
删除该行:
$row = mysql_fetch_array($result);
while
循环将抓取第一次迭代的第一行。
结果代码:
<?php
$ordre = "nom";
$croissance = "ASC";
if(isset($_GET["ordre"])){
$ordre = $_GET["ordre"];
};
if(isset($_GET["croissance"])){
$croissance = $_GET["croissance"];
};
$con = mysql_connect('localhost','root','');
mysql_select_db('sdj_jeux', $con);
$sql = "SELECT * FROM jeux ORDER BY $ordre $croissance";
$result = mysql_query($sql, $con);
$couleurcompteur = 0;
while ($row = mysql_fetch_array($result)){
$couleurcompteur += 1;
if($couleurcompteur % 2){
$classe = "pale";
} else {
$classe = "fonce";
};
?>
答案 1 :(得分:4)
这就是你的问题:
$row = mysql_fetch_array($result);
$couleurcompteur = 0;
while ($row = mysql_fetch_array($result)){
您在mysql_fetch_array()
之前拨打while
一次。由于您不使用它,因此会抛出第一行。删除那个不需要的电话。
注意:不要使用MySQL_ *因为自PHP 5.5起已弃用。请改用MySQLi_ *或PDO