par
jay64 » 25 juil. 2006, 16:05
Bonjour à tous,
J'ai une requete SELECT qui fonctionne trés bien sous PhpMyAdmin et qui me renvoie 20 enregistrements.
Lorsque je l'utilise en php, je la déclare, et à son utilisation dans un while, il ne me prend jamais en compte le premier enregistrement de la requete.
Pouvez-vous me dire pourquoi ?
Merci
Voici la requete :
<?php
mysql_select_db($database_connexion_bdd_mysql, $connexion_bdd_mysql);
$query_Requete = "SELECT prono_Fusion_Voteur_MatchLigue1.IdVoteur, prono_Voteur.Pseudo, prono_Fusion_Voteur_MatchLigue1.IdMatch, prono_Fusion_Voteur_MatchLigue1.VoteCalcule, prono_Fusion_Voteur_MatchLigue1.NbPointsMarques, prono_Fusion_Voteur_MatchLigue1.ScoreEquipeDom, prono_Fusion_Voteur_MatchLigue1.ScoreEquipeVis, prono_MatchLigue1.ResultatMatch, prono_MatchLigue1.ScoreEquipeDomReel, prono_MatchLigue1.ScoreEquipeVisReel FROM prono_Voteur INNER JOIN (prono_MatchLigue1 INNER JOIN prono_Fusion_Voteur_MatchLigue1 ON prono_MatchLigue1.IdMatch = prono_Fusion_Voteur_MatchLigue1.IdMatch) ON prono_Voteur.IdVoteur = prono_Fusion_Voteur_MatchLigue1.IdVoteur ORDER BY prono_Fusion_Voteur_MatchLigue1.IdVoteur, prono_Fusion_Voteur_MatchLigue1.IdMatch";
$Requete = mysql_query($query_Requete, $connexion_bdd_mysql) or die(mysql_error());
$row_Requete = mysql_fetch_assoc($Requete);
$totalRows_Requete = mysql_num_rows($Requete);
?>
et voici mon calcul à l'aide du while :
<?php
while ($ligne=mysql_fetch_array($Requete))
{ extract($ligne);
if ($VoteCalcule == $ResultatMatch)
{
if ($ScoreEquipeDom == $ScoreEquipeDomReel and $ScoreEquipeVis == $ScoreEquipeVisReel)
{
$NbPoints = "3";
}
else
{
$NbPoints = "1";
}
}
else
{
$NbPoints = "0";
}
$requete_maj = "UPDATE prono_Fusion_Voteur_MatchLigue1 SET NbPointsMarques = $NbPoints WHERE IdVoteur = $IdVoteur AND IdMatch = $IdMatch";
$maj = mysql_query($requete_maj, $connexion_bdd_mysql) or die(mysql_error());
}
echo "Calcul et mise à jour de la table effectués !";
?>
Bonjour à tous,
J'ai une requete SELECT qui fonctionne trés bien sous PhpMyAdmin et qui me renvoie 20 enregistrements.
Lorsque je l'utilise en php, je la déclare, et à son utilisation dans un while, il ne me prend jamais en compte le premier enregistrement de la requete.
Pouvez-vous me dire pourquoi ?
Merci
Voici la requete :
[php]<?php
mysql_select_db($database_connexion_bdd_mysql, $connexion_bdd_mysql);
$query_Requete = "SELECT prono_Fusion_Voteur_MatchLigue1.IdVoteur, prono_Voteur.Pseudo, prono_Fusion_Voteur_MatchLigue1.IdMatch, prono_Fusion_Voteur_MatchLigue1.VoteCalcule, prono_Fusion_Voteur_MatchLigue1.NbPointsMarques, prono_Fusion_Voteur_MatchLigue1.ScoreEquipeDom, prono_Fusion_Voteur_MatchLigue1.ScoreEquipeVis, prono_MatchLigue1.ResultatMatch, prono_MatchLigue1.ScoreEquipeDomReel, prono_MatchLigue1.ScoreEquipeVisReel FROM prono_Voteur INNER JOIN (prono_MatchLigue1 INNER JOIN prono_Fusion_Voteur_MatchLigue1 ON prono_MatchLigue1.IdMatch = prono_Fusion_Voteur_MatchLigue1.IdMatch) ON prono_Voteur.IdVoteur = prono_Fusion_Voteur_MatchLigue1.IdVoteur ORDER BY prono_Fusion_Voteur_MatchLigue1.IdVoteur, prono_Fusion_Voteur_MatchLigue1.IdMatch";
$Requete = mysql_query($query_Requete, $connexion_bdd_mysql) or die(mysql_error());
$row_Requete = mysql_fetch_assoc($Requete);
$totalRows_Requete = mysql_num_rows($Requete);
?>[/php]
et voici mon calcul à l'aide du while :
[php]<?php
while ($ligne=mysql_fetch_array($Requete))
{ extract($ligne);
if ($VoteCalcule == $ResultatMatch)
{
if ($ScoreEquipeDom == $ScoreEquipeDomReel and $ScoreEquipeVis == $ScoreEquipeVisReel)
{
$NbPoints = "3";
}
else
{
$NbPoints = "1";
}
}
else
{
$NbPoints = "0";
}
$requete_maj = "UPDATE prono_Fusion_Voteur_MatchLigue1 SET NbPointsMarques = $NbPoints WHERE IdVoteur = $IdVoteur AND IdMatch = $IdMatch";
$maj = mysql_query($requete_maj, $connexion_bdd_mysql) or die(mysql_error());
}
echo "Calcul et mise à jour de la table effectués !";
?>[/php]