Les éléments HTML peuvent être identifiés par un id unique.

<div id="mon_id"> </div>

Un attribut de type identifiant doit commencer par une lettre ([A-Za-z]), suivie d'un nombre quelconque de lettres, chiffres ([0-9]), traits d'union ("-"), soulignements ("_"), deux-points (":"), et points (".")

Affecter l'identifiant entier de l'enregistrement de ma BDD à un élément HTML

Or, il peut être utile lorsqu'on a besoin d'une liste de données tirées d'une base de données chacune d'elle intégrée dans un élément, comme un div, d'affecter à l'id de ce div l'identifiant unique de la données (l'enregistrement) qui lui est sous forme d'entier.

Ma méthode est la suivante :

Code HTML/PHP :

Je parcours la table de ma BDD (penser à se connecter préalablement à la base de données), je crée un DIV par enregistrement dont l'attribut ID est le mot clé "madonnee_" suivi du numéro d'identifiant de l'enregistrement de la BDD (donc madonnee_1, madonnee_2 etc …).
Tous les DIV ont la classe "mesdonnee"

$result = mysql_query("SELECT id, nom FROM matable WHERE ..");
// Parcours de la table de la BDD, création d'un DIV par enregistrement
while ($row = mysql_fetch_array($result)) {
   echo '<div class="mesdonnee" id="madonnee_'.$row->id.'"> '.$row->nom.'</div>';
}

Code JQuery :

En JQuery, lorsqu'on clique sur un DIV de classe "mesdonnee", je récupère la valeur de l'identifiant unique de l'enregistrement de la BDD en utilisant la fonction replace() javascript qui me supprime le mot clé 'madonnee' pour me délivrer l'identifiant sous sa forme originale.

$("div.madonnee").click(function(){   
   var id_donnee = ($(this).attr('id').replace ('madonnee_', ''));
   alert ('la donnée affichée correspond à l'enregistrement d'identifiant : '+id_donnee );
});

 

 

0 réponses

Laisser un commentaire

Participez-vous à la discussion?
N'hésitez pas à contribuer!

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.