carnet d'adresses avec Mysql

carnet d'adresses avec Mysql - PHP - Programmation

Marsh Posté le 22-12-2005 à 09:58:35    

bonjour,
 
j'ai 2 fichiers, un qui liste tous les contacts de la base de données et un autre qui affiche la fiche détaillée d'un contact. A chaque fin de ligne du tableau il y a un lien 'Détails' qui pointe vers le fichier fiche.php avec dans l'url l'id du contact
 
mais il ne prend pas en compte l'id et n'affiche aucun contact , merci pour vos conseils  
 
Voici le fichier liste.php :
 
<?php
$dbhost="localhost";
$dblogin="xxxxxxxx";
$dbpassword="xxxxxxxx";
$dbname="annuaire";
 
 
mysql_connect($dbhost,$dblogin,$dbpassword);
mysql_selectdb($dbname);
$res=mysql_query("SELECT id, nom_type, nom, societe, telephone FROM contact " );
 
$nbrligne = mysql_num_rows ($res);
 
$nbrchamp=mysql_num_fields($res);
echo"<br>";
echo"<br>";
echo"<br>";
echo "<p><p><table border=4 align=bottom cellpadding=6 cellspacing=2 width=80%><caption align=top>Carnet de contacts SESAME</caption>";
 
//for ($i=0;$i<5;$i++) {
//printf("<th>%s</th>",mysql_field_name($res,$i));
 
//}
echo "<th>id</th>";
echo "<th>Type contact</th>";
echo "<th>Nom</th>";
echo "<th>Société</th>";
echo "<th>Téléphone</th>";
echo "<th>-</th>";
for ($i=0;$i<$nbrligne;$i++)  
 {
   $row=mysql_fetch_row($res);
   echo "<tr>";
   foreach($row as $col)  
  {
    if (!$col) $col="&nbsp;";
    echo "<td align=center>$col</td>";
  }
 echo "<td><a href=fiche.php?id=".$id.">détails</a></td>";  
   echo "</tr>";
 }
echo "</table>";
 
?>

 
 
 
et voici le 2eme fichier : fiche.php :
 
<?php
$dbhost="localhost";
$dblogin="root";
$dbpassword="bz2cad";
$dbname="annuaire";
 
$id = (isset($_GET['id']) ? $_GET['id'] : "id non défini" );
echo $id;
//$id=$_GET["id"];
 
mysql_connect($dbhost,$dblogin,$dbpassword);
mysql_select_db($dbname);
$result=mysql_query("SELECT * FROM contact WHERE id='$id'" );
 
if(mysql_num_rows($result) > 0)
{
 
    $row = mysql_fetch_array($result);  
echo "Type : " . $row["nom_type"] . "<br>";
echo "Nom : " . $row["nom"] . "<br>";
echo "Societe : " . $row["societe"] . "<br>";
echo "Adresse : " . $row["adresse"] . "<br>";
echo "Code postal : " . $row["codepostal"] . "<br>";
echo "Ville : " . $row["ville"] . "<br>";
echo "Pays : " . $row["pays"] . "<br>";
echo "Telephone : " . $row["telephone"] . "<br>";
echo "Fax : " . $row["fax"] . "<br>";
echo "Fonction : " . $row["fonction"] . "<br>";
echo "E-mail : " . $row["email"] . "<br>";
echo "Portable : " . $row["portable"] . "<br>";
echo "Secrétaire : " . $row["secretaire"] . "<br>";
echo "Service : " . $row["service"] . "<br>";
} else {
 
echo "Désolé, mais cet utilisateur est inconnu<br>";
       }
mysql_close();
 
?>

Reply

Marsh Posté le 22-12-2005 à 09:58:35   

Reply

Marsh Posté le 22-12-2005 à 10:12:17    

Bonjour !
Dans ton fichier liste.php, tu n'affectes nulle part la valeur de $id  :??:  
 
Sinon tu devrais essayer avec un while et mysql_fetch_array, plutot que d'utiliser un for peut être  
 
Voilà  :hello:

Reply

Marsh Posté le 22-12-2005 à 11:15:14    

j'ai réussi en mettant :  
 
   echo "<td><a href=fiche.php?id=".$row[0].">détails</a></td>";
 
 
merci a tous

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed