Problème avec l'affichage de la premiere ligne
Posté : 11 avr. 2005, 11:51
Voici mon code qui affiche chaque ligne d'enregistrement d'une base sous forme de tableau après avoir lancé la requête de sélection de tt les champs :
Mon probleme est que la première ligne de la base ne s'affiche pas :
<HTML>
<HEAD>
<TITLE> Affichage des données de la table gestion_machine </TITLE>
</HEAD>
<BODY>
<BR>
<H2 align="center">Voici la liste des machines répertoriées</H2>
<BR>
Cliquez sur les l'adresse IP pour accéder à la page d'acceuil de l'imprimante ou pour prendre la main sur la machine !
<BR><BR> <!-- Sauter une ligne -->
Sinon cliquez sur le lien ci dessous pour accèder au formulaire de recherche :
<BR><BR>
<A href="Recherche_Machine.html">Formulaire de recherche</A>
<BR><BR>
<!-- Debut du script en php -->
<?
//connexion à la base de données:
$liendb=mysql_connect("localhost","root","")or die("la connexion à la base a échoué");
// selection de la base à remplir:
mysql_select_db("technique")or die("Impossible de se connecter à la base de données");
;
// requête de contrôle de l'affichage
$sql="SELECT * FROM gestion_machine";
$resultat=mysql_query($sql);
$lgn=mysql_num_rows($resultat);
$nbcol=mysql_num_fields($resultat);
echo("<TABLE>");
/*affichage des données*/
while($tab=mysql_fetch_array($resultat))/*crée un tableau de variable a partir du résultat de la requête*/
{
echo"<TABLE border=1>";
for($i=0;$i<$lgn;$i++)
{
$affchamp = mysql_fetch_row($resultat);
echo"<TR>";
echo"<TD>".$affchamp[0]."</TD>";
echo"<TD>".$affchamp[1]."</TD>";
echo"<TD>".$affchamp[2]."</TD>";
if ($affchamp[5]=="Imprimante"){
$url2 = "http://"."$affchamp[3]";
echo"<TD>"."<A href='".htmlentities($url2)."'>$affchamp[3]</A>"."</TD>";
}elseif ($affchamp[5]=="Ordinateur bureau"){
$url2 = "http://"."$affchamp[3]".":5800";
echo"<TD>"."<A href='".htmlentities($url2)."'>$affchamp[3]</A>"."</TD>";
}elseif ($affchamp[5]=="Ordinateur portable"){
$url2 = "http://"."$affchamp[3]".":5800";
echo"<TD>"."<A href='".htmlentities($url2)."'>$affchamp[3]</A>"."</TD>";
}else{
echo"<TD>".$affchamp[3]."</TD>";
}
echo"<TD>".$affchamp[4]."</TD>";
echo"<TD>".$affchamp[5]."</TD>";
echo"<TD>".$affchamp[6]."</TD>";
echo"</TR>";
}
echo"</TABLE>";
}
// Fermeture de la base
mysql_close($liendb);
?>
<!-- fin du script en php -->
</BODY>
</HTML>
Si quelqu'un voit où se trouve l'erreur qui empeche d'afficher la première ligne alors merci d'avance :D
Mon probleme est que la première ligne de la base ne s'affiche pas :
<HTML>
<HEAD>
<TITLE> Affichage des données de la table gestion_machine </TITLE>
</HEAD>
<BODY>
<BR>
<H2 align="center">Voici la liste des machines répertoriées</H2>
<BR>
Cliquez sur les l'adresse IP pour accéder à la page d'acceuil de l'imprimante ou pour prendre la main sur la machine !
<BR><BR> <!-- Sauter une ligne -->
Sinon cliquez sur le lien ci dessous pour accèder au formulaire de recherche :
<BR><BR>
<A href="Recherche_Machine.html">Formulaire de recherche</A>
<BR><BR>
<!-- Debut du script en php -->
<?
//connexion à la base de données:
$liendb=mysql_connect("localhost","root","")or die("la connexion à la base a échoué");
// selection de la base à remplir:
mysql_select_db("technique")or die("Impossible de se connecter à la base de données");
;
// requête de contrôle de l'affichage
$sql="SELECT * FROM gestion_machine";
$resultat=mysql_query($sql);
$lgn=mysql_num_rows($resultat);
$nbcol=mysql_num_fields($resultat);
echo("<TABLE>");
/*affichage des données*/
while($tab=mysql_fetch_array($resultat))/*crée un tableau de variable a partir du résultat de la requête*/
{
echo"<TABLE border=1>";
for($i=0;$i<$lgn;$i++)
{
$affchamp = mysql_fetch_row($resultat);
echo"<TR>";
echo"<TD>".$affchamp[0]."</TD>";
echo"<TD>".$affchamp[1]."</TD>";
echo"<TD>".$affchamp[2]."</TD>";
if ($affchamp[5]=="Imprimante"){
$url2 = "http://"."$affchamp[3]";
echo"<TD>"."<A href='".htmlentities($url2)."'>$affchamp[3]</A>"."</TD>";
}elseif ($affchamp[5]=="Ordinateur bureau"){
$url2 = "http://"."$affchamp[3]".":5800";
echo"<TD>"."<A href='".htmlentities($url2)."'>$affchamp[3]</A>"."</TD>";
}elseif ($affchamp[5]=="Ordinateur portable"){
$url2 = "http://"."$affchamp[3]".":5800";
echo"<TD>"."<A href='".htmlentities($url2)."'>$affchamp[3]</A>"."</TD>";
}else{
echo"<TD>".$affchamp[3]."</TD>";
}
echo"<TD>".$affchamp[4]."</TD>";
echo"<TD>".$affchamp[5]."</TD>";
echo"<TD>".$affchamp[6]."</TD>";
echo"</TR>";
}
echo"</TABLE>";
}
// Fermeture de la base
mysql_close($liendb);
?>
<!-- fin du script en php -->
</BODY>
</HTML>
Si quelqu'un voit où se trouve l'erreur qui empeche d'afficher la première ligne alors merci d'avance :D