par
flitox » 11 avr. 2005, 14:39
J'ai refais ton code et j'ai modifié pas mal de choses car tu t'emmêles complètement dans l'affichage de texte et de variables sur la même ligne.
Tu fermes/ouvres les double quotes au mauvais endroit et tu fais des blocs de code que j'ai aéré pour une meilleure compréhension :
<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 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>";
$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>
J'ai refais ton code et j'ai modifié pas mal de choses car tu t'emmêles complètement dans l'affichage de texte et de variables sur la même ligne.
Tu fermes/ouvres les double quotes au mauvais endroit et tu fais des blocs de code que j'ai aéré pour une meilleure compréhension :
[php]<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 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>";
$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>
[/php]