Manuel PHP

mysql_fetch_assoc

(PHP 4 >= 4.0.3, PHP 5, PECL mysql:1.0)

mysql_fetch_assoc — Lit une ligne de résultat MySQL dans un tableau associatif

Description

array mysql_fetch_assoc ( resource $result )

mysql_fetch_assoc() retourne un tableau associatif qui contient la ligne lue dans le résultat result et déplace le pointeur interne de données. mysql_fetch_assoc() revient à appeler la fonction mysql_fetch_array() avec MYSQL_ASSOC en tant que second paramètre. Cette fonction retourne uniquement un tableau associatif.

Liste de paramètres

result

La ressource de résultat qui vient d'être évaluée. Ce résultat vient de l'appel à la fonction mysql_query().

Valeurs de retour

Retourne un tableau associatif de chaînes qui contient la ligne lue dans le résultat result , ou bien FALSE s'il ne reste plus de lignes à lire.

Si plusieurs colonnes portent le même nom, la dernière aura la priorité. Pour accéder aux autres colonnes du même nom, vous devez utiliser la fonction mysql_fetch_row() avec les indices numériques ou utiliser les alias sur les noms. Regardez la documentation sur la fonction mysql_fetch_array() pour plus d'informations sur les alias.

Exemples

Example#1 Exemple avec mysql_fetch_assoc()

  1. <?php
  2.  
  3. $conn = mysql_connect("localhost", "mysql_user", "mysql_password");  
  4.  
  5. if (!$conn) {  
  6. echo "Impossible de se connecter à la base de données : " . mysql_error();  
  7. exit;  
  8. }  
  9.  
  10. if (!mysql_select_db("mydbname")) {  
  11. echo "Impossible de sélectionner la base mydbname : " . mysql_error();  
  12. exit;  
  13. }  
  14.  
  15. $sql = "SELECT id as userid, fullname, userstatus
  16. FROM sometable
  17. WHERE userstatus = 1";  
  18.  
  19. $result = mysql_query($sql);  
  20.  
  21. if (!$result) {  
  22. echo "Impossible d'exécuter la requête ($sql) dans la base :" . mysql_error();  
  23. exit;  
  24. }  
  25.  
  26. if (mysql_num_rows($result) == 0) {  
  27. echo "Aucune ligne trouvée, rien à afficher.";  
  28. exit;  
  29. }  
  30.  
  31. // Tant qu'une ligne existe, place cette ligne dans la variable $row
  32. // sous la forme d'un tableau associatif.
  33. // Note : Si vous n'attendez qu'une seule ligne, oubliez la boucle
  34. // Note : Si vous utilisez extract($row); dans la boucle suivante
  35. //    vous créerez $userid, $fullname et $userstatus
  36. while ($row = mysql_fetch_assoc($result)) {  
  37. echo $row["userid"];  
  38. echo $row["fullname"];  
  39. echo $row["userstatus"];  
  40. }  
  41.  
  42. mysql_free_result($result);  
  43.  
  44. ?> 

Notes

Note: Performance Une chose importante à noter est que l'utilisation de mysql_fetch_assoc() n'est pas significativement plus lent que l'utilisation de mysql_fetch_row(), alors qu'il fournit des valeurs significatives ajoutées.

Note: Les noms des champs retournés par cette fonction sont sensibles à la casse.

Note: Cette fonction définit les champs NULL à la valeur PHP NULL.


Remonter Remonter
L'éditeur javascript - CSS - Gentoo - Tutoriaux PHP - Tutoriels PHP - Breizh Blog