[RESOLU] Afficher valeur d'un champ d'une table

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [RESOLU] Afficher valeur d'un champ d'une table

Re: Afficher valeur d'un champ d'une table

par Couin » 11 nov. 2014, 06:52

Hello :)

Alors j'ai avanced sur le sujet et en fait il s'agit d'une jointure de tables.

Voici donc la requête SQL que j'ai mis dans ma page PHP :
    $sql = "SELECT eqpt_name, prod_date, begin, end, comment, resp_name, user_name, id_event"
    . " FROM trs_events"
    . " LEFT JOIN trs_eqpts"
    . " ON trs_eqpts.eqpt_id = trs_events.id_eqpt"
    . " LEFT JOIN trs_resps"
    . " ON trs_resps.resp_id = trs_events.id_resp"
    . " LEFT JOIN trs_users"
    . " ON trs_users.user_id = trs_events.id_user"	
	. " ORDER BY id_event DESC";
(On peut remarqué que j'ai effectué la même démarche de jointure pour avoir le même comportement avec l'information de "Responsabilité" et de "Superviseur" (user).

Cela m'a obligé à renommer certains champs de tables pour ne pas avoir de conflit lors de la jointure et de la requête).
J'ai donc 4 tables (et après le / ce sont les colonnes, elles mêmes séparées par | )
trs_eqpts / eqpt_id | eqpt_name
trs_events / id_event | id_user | id_eqpt | id_resp | comment | prod_date | end | begin
trs_resps / resp_id | resp_name
trs_users / user_id | user_name

Voilà, au cas où ca puisse servir à d'autres :D

Couin

Re: Afficher valeur d'un champ d'une table

par Couin » 09 nov. 2014, 22:16

Hello,

Je ne parviens pas à adapter le code sans obtenir des erreurs de plus en plus bizarres au fur et à mesure de mes essais, mais je pense que ce code sert à afficher la liste des équipements existants, or ce que je veux faire c'est que cela affiche le nom de l'équipement au lieu de son id pour les évènements saisis précédemment , qui sont affiché sous forme de liste.

M'ciiiii :D

Re: Afficher valeur d'un champ d'une table

par xTG » 06 nov. 2014, 19:17

Réponse à adapter :
$sql = 'SELECT idEquipement, nomEquipement FROM liste_equipement ORDER BY idEquipement ASC';
$query = mysqli_query($sql); // récupère la liste des équipement par id croissant avec leur nom
while($res = mysqli_fetch_array($query))
{
  echo 'idEquipement = ' . $res['idEquipement'];
  echo 'nomEquipement = ' . $res['nomEquipement'];
}

Re: Afficher valeur d'un champ d'une table

par Couin » 06 nov. 2014, 14:19

Hello,

La liste des équipements est dans une table "equipements" dans la base SQL.
Elle est amenée à évoluer donc je préfère modifier une table plutôt que la page PHP :)

Re: Afficher valeur d'un champ d'une table

par xTG » 06 nov. 2014, 14:12

Où as-tu l'information LH01_CO001 ?
Si ton select est en dur dans ce cas tu peux faire ceci :
$listeEquipement = array(
1 =>  "LB01_CO001",
2 =>  "LB02_CO001",
3 =>  "LH01_CO001",
4 => "LH02_CO001"
);

// Afficher l'équipement 3
$idEquipement = 3;
echo $listeEquipement[$idEquipement];

Afficher valeur d'un champ d'une table

par Couin » 06 nov. 2014, 13:33

Bonjour à tous,

Tout nouveau sur le forum (logique, je viens de m'inscrire), je suis dans l'Essonne et je bricolouille on dira, un peu de php sql (en fait je modifie des scripts existants que je trouve par ci par là en fonction de ce que je veux faire.

Mais aujourd’hui, je cale alors je pose la question au férus de php et sql :D

Je souhaite faire une saisie d'évenements (c'est pour le job) dans laquel il y aura l'équipement concerné, date de début du défaut, date de fin du défaut, commentaire et responsabilité.
J'ai trouvé les scripts permettant de remplir les lignes d'une table que j'ai nommé evenements donc ca c'est good.
La table a les colonnes suivantes :
id (qui s’incrémente à chaque saisie de ligne), equipement_id, debut, fin, prod_date, commentaire, responsable_id

J'ai ensuite fais évoluer le script pour que, pour les équipements, il me soit proposé une liste déroulante d'équipements existants, tirée d'une table que j'ai nommé equipements et qui se compose pour le moment de id et equipement .

Exemple :
id equipement
1 LB01_CO001
2 LB02_CO001
3 LH01_CO001
4 LH02_CO001

Dans la colonne equipement_id de la table evenements, mon formulaire écrit le numéro d'id d'équipement (donc dans la liste d’évènements saisis, c'est pour le moment, le numéro id d'equipement qui apparait).

Ce que je voudrais c'est que si par exemple l'equipement_id enregistré sur une ligne est 3, que ca affiche LH01_CO001 .

J'ai mis en hébergement ce que j'ai déjà de fait, il y a les fichiers pour insérer les lignes dans la table , et aussi un export de la base de données (que j'ai vidé en terme de saisie d’évènements) : http://88.168.89.215/fichiers/fichiers.zip

La configuration de mon serveur est une installation avec WampServer 2.2 ( Apache 2.2.22 - PHP 5.3.13 - MySQL 5.5.24 )

Si quelqu'un a un tuyau, je suis preneur, car je ne sais pas comment peut s'appeler c e genre de fonctionnalité, alors pour faire des recherches, ce n’est pas évident.

Merci :)
Couin

(PS : Je serais de retour à la maison que dimanche soir donc ne pas s'étonner que je ne réponde pas avant :wink: )