PHP/MySQL Extraction

 

A l'issue de l'exécution d'une requête de type SELECT sur le serveur, il est possible de récupérer les résultats pour les afficher sur la page WEB

Fonction

La fonction utilisée est : mysqli_fetch_assoc()

Ele récupère une ligne de résultat sous forme de tableau associatif

Prototype

Le prototype de la fonction est :

				
				array mysqli_fetch_assoc ( mysqli_result $result )

Paramètres d'entrée

Valeur de retour : array

Retourne un tableau associatif de chaînes représentant la prochaine ligne dans le jeu de résultats représenté par le paramètre $result. Chaque clé du tableau représente le nom d'une colonne du résultat ou NULL s'il n'y a plus de ligne dans le jeu de résultats.

Exemple 1 : affichage (brut) des résultats

<!DOCTYPE html>

<html>

	<head>
		<title>Exemple</title>
		<meta charset="UTF-8" />
	</head>


<body>


<?php

  /* ************************************************** */
  /* Connexion au serveur de base de données */
  /* serveur : 10.34.1.75
  /* login : h9999
  /* mdp : 1234
  /* base : etudiant
  /* ************************************************** */

	$link   = mysqli_connect("10.34.1.75", "h99999", "1234" , "etudiant") ;

	if ($link == false) 
		{
			echo "Erreur de connexion : " .  mysqli_connect_errno()  ;
			die();
		}
	else
		{
			echo "<p>connexion r&eacute;ussie</p>" ;
		}
						



  /* ************************************************** */
  /* Envoi d'une requete au serveur */
  /* ************************************************** */
	
	$requete = "select societe as S, ville from fournisseur order by societe" ;

	$result = mysqli_query($link,$requete);

	if ( $result == FALSE )
		{
			echo "Erreur d'exécution de la requete " ;
			die();
		}
	else
		{
			echo "<p>SELECT a retourné " . mysqli_num_rows($result) . " lignes</p>" ;
		}	


  /* ************************************************** */
  /* Extraction des résultats de la requete SELECT */
  /* ************************************************** */
	
	if  ( mysqli_num_rows($result) > 0)
		{
			while ($row = mysqli_fetch_assoc($result))
				{
					echo $row["S"];
					echo " : " ;
					echo $row["ville"];
					echo "<br />";
				}  
		}
	else
		{
			echo "La requête ne renvoie pas de résultat !" ;
		}

?>

</body>

</html>
Voir

Exemple 2 : affichage des résultats (dans un tableau)

<!DOCTYPE html>

<html>

	<head>
		<title>Exemple</title>
		<meta charset="UTF-8" />
	</head>


<body>


<?php

  /* ************************************************** */
  /* Connexion au serveur de base de données */
  /* serveur : 10.34.1.75
  /* login : h9999
  /* mdp : 1234
  /* base : etudiant
  /* ************************************************** */

	$link   = mysqli_connect("10.34.1.75", "h99999", "1234" , "etudiant") ;

	if ($link == false) 
		{
			echo "Erreur de connexion : " .  mysqli_connect_errno()  ;
			die();
		}
	else
		{
			echo "<p>connexion r&eacute;ussie</p>" ;
		}
						

  /* ************************************************** */
  /* Envoi d'une requete au serveur */
  /* ************************************************** */
	
	$requete = "select societe as S, ville from fournisseur order by societe" ;

	$result = mysqli_query($link,$requete);

	if ( $result == FALSE )
		{
			echo "Erreur d'exécution de la requete " ;
			die();
		}
	else
		{
			echo "<p>SELECT a retourné " . mysqli_num_rows($result) . " lignes</p>" ;
			echo "<br/>" ;
		}	

?>	


	<!-- ******************************** --> 
	<!-- construction du tableau en HTML -->
	<!-- avec une première ligne d'entête -->
	<!-- ******************************** --> 


	<table border='1' align='center' cellpadding='5' >
		<tr>
			<th>SOCIETE</th>
			<th>VILLE</th>
		</tr>



<?php

  /* ************************************************** */
  /* Extraction des résultats de la requete SELECT */
  /* ************************************************** */
	
	if  ( mysqli_num_rows($result)  > 0)
		{
			while ($row = mysqli_fetch_assoc($result))
				{
					/* constrution des lignes dynamiquement */
					echo "<tr>";
					echo "<td>" . $row["S"] . "</td>" ;
					echo "<td>" . $row["ville"] . "</td>" ;
					echo "</tr>";
				}  
		}
	else
		{
			echo "<tr>" ;
			echo "<td colspan='2'>La requête ne renvoie pas de résultat !</td>" ;
			echo "</tr>";
		}

?>


</table>  <!-- fin du tableau -->


</body>

</html>
		
Voir