Utilisation d'alias issu d'une table
danielos77 Messages postés 112 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je fais appelle au forum car je pédale (sans fin) dans la semoule.
Pour éviter de changer x fois les mêmes informations dans des pages, j'ai créé une table simple avec 3 champs (ID, Var, Contenu).
L'idée est de mettre à la place d'une information une variable nommée par le contenu d'un champ de la colonne Var et que cela affiche le contenu correspondant de la colonne Contenu.
Table
ID | Var | Contenu
1 | Pdt |Alain DUPONT
2 | MailPdt |Alain.dupont@patate.com
Ensuite dans la page, je placerai simplement
$Pdt=$alias['Contenu']; à l'endroit où je souhaiterais avoir Alain DUPONT (en ayant ma requête mise en amont sur ladite page)
J'arrive bien à récupérer mes couples, chacun dans un tableau, avec la requête suivante :
$sql = 'SELECT Var,Contenu FROM Alias';
try{
$req = $bdd->query($sql);
$res = $req->fetchAll();
}
catch(Exception $e){
// en cas d'erreur :
echo " <br>Erreur ! ".$e->getMessage();
echo " <br>Les datas : " ;
print_r($res);
}
Ou à lister tous les $alias['Contenu']; en rajoutant un foreach
$sql = 'SELECT Var,Contenu FROM Alias';
try{
$req = $bdd->query($sql);
$res = $req->fetchAll();
foreach($res as $alias){
echo "<br>".$alias['Contenu']."<br>";
}
}
catch(Exception $e){
// en cas d'erreur :
echo " <br>Erreur ! ".$e->getMessage();
echo " <br>Les datas : " ;
print_r($res);
}
Mais après je bloque sur la façon de faire... si c'est faisable.
J'ai bien chercher aussi du côté
$sql="SELECT Contenu FROM Alias where Var= :var";
$requete =$bdd->prepare($sql);1
$requete->bindValue(":var", $Var, PDO::PARAM_STR);
$requete->execute();
mais sans succès $Var car s'il faut saisir la valeur de $Var à la main ;-(
Merci à celui ou celle qui pourra me donner une piste
Windows / Firefox 152.0
4 réponses
-
Bonjour,
C'est très curieux comme façon de faire, pourquoi ne pas avoir simplement une table de la sorte :
ID | Pdt | MailPdt
1 | Alain DUPONT | Alain.dupont@patate.com
2 | Michèle MICHU | mich@michu.com
...Ça facilite beaucoup les choses parce que pour chaque ligne, tu peux demander ta variable Pdt ou MailPdt, et les deux informations sont liées ensemble (=sur une même ligne quoi)
Désolé, je sais que ça ne répond pas à ta question mais je trouve ça vraiment sur-compliqué comme organisation dans ta BDD
-
Bonjour,
Tout simplement parce que sur certaines pages il y aura le nom et le tph sur d'autre ce sera l'envoi d'un mail, etc... Mais oui la variable en place de l'alias pourrait être $var=$alias['nom_colonne'];
Ce qui pouvait simplifier la table c'est de mettre Var en unique et de supprimer l'ID qui ne me servira pas.
L'idée est simplement de ne pas avoir à faire le tour de toute les pages et de scruter tous les codes lorsqu'il y a un changement dans l'association.
Mais comme tu dis, ça ne fait pas avancer la chose.
@+
Daniel -
Bonjour,
Si tu en es au stade de la définition des données et de la conception d'un site web, tu devrais te concentrer d'abord sur la première.
J'imagine que dans une association on pourrait avoir :
une table membre : id, nom, prénom,tel, email, date inscription, ...
une table bureau : id, membre.id, fonction.id, date début, date fin, ...
une table fonction : id, fonction
-
Bonjour,
Et ?
Le scmilblick n'a pas beaucoup avancé avec ça ;-)