MySQL пропускает первую строку

Я видел других людей с этой проблемой, но решения, которые я видел, мне не помогают, или я не знаю, как их использовать: 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"; }; ?> 

Мой код пропускает первую строку моей базы данных, и я не понимаю, почему.

Удалите строку:

 $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"; }; ?> 

Вот ваша проблема:

 $row = mysql_fetch_array($result); $couleurcompteur = 0; while ($row = mysql_fetch_array($result)){ 

Вы вызываете mysql_fetch_array() один раз до while . Это выбрасывает первую строку, так как вы ее не используете. Удалите этот ненужный звонок.

ВНИМАНИЕ. Не используйте MySQL_ *, поскольку он устарел с PHP 5.5. Вместо этого используйте MySQLi_ * или PDO