Récupérer valeur de champs dans 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 : Récupérer valeur de champs dans une table

Re: Récupérer valeur de champs dans une table

par antitrust56 » 26 août 2009, 14:16

Merci à vous 2.

La fonction de Berzemus fonctionne parfaitement.

Re: Récupérer valeur de champs dans une table

par Dr@ke » 26 août 2009, 14:13

C'était juste un petit exemple non complet et peut-être pas adapté à ce que tu aimerais réellement ...
Je suis assez novice en SQL.
Mieux de prendre exemple sur la fonction à Berzemus

Re: Récupérer valeur de champs dans une table

par antitrust56 » 26 août 2009, 14:08

J'ai essayé ce que tu m'as montré Drake.
Je n'ai pas d'erreurs PHP mais rien ne s'affiche non plus.

Code : Tout sélectionner

$sql_query="SELECT value_option from seo_options WHERE name_option='value_option'"; // la requête $result_query = mysql_query($sql_query); //exécution de la requête while ($resultat = mysql_fetch_assoc($result_query)) { // la bouche pour afficher les résultats echo $resultat["nom_site"]; // quel que soit le nombre de lignes ou résultats -> 1 requête }
Je m'explique un peu plus, je suis en train de créer mon propre CMS pour des besoins personnels et en étudiant de près Wordpress je me suis rendu compte qu'il affiche de la même manière leur valeur en faisant 'form_option('admin_email');'.

J'ai recherché la fonction sans rien trouvé.

Re: Récupérer valeur de champs dans une table

par Berzemus » 26 août 2009, 14:06

Quelque chose du genre, si je te suis bien:
function lectureValeur($nom_valeur)
   {
   $result = mysql_query("SELECT value_option FROM table WHERE name_option='$nom_valeur'");
   if (!$result) 
      {
      return false; // ou quelque chose du genre return "valeur $nom_valeur non trouvée";
      }
   $row = mysql_fetch_row($result);
   return $row[0];
   }

//ensuite:
$nomDuSite = lectureValeur("nom_site");
En considérant qu'une requête préparée est sans plus sécurisée, et qu'une meilleure gestion d'absence de la valeur serait souhaitable, et que mysqli est à préférer au simple mysql.

Re: Récupérer valeur de champs dans une table

par Dr@ke » 26 août 2009, 13:09

Oui, ça me convient mais je voudrais faire une fonction pour éviter de faire une requête à chaque fois que je veux afficher la valeur d'un champs.
Bien je suis loin d'être un pro SQL, mais ta requête est le SELECT, ensuite tu affiches le nombre de valeurs que tu veux, cela exécutera toujours une et une seule requête.

Exemple (résumé):
$sql_query="SELECT ..." // la requête
$result_query=mysql_query($sql_query); //exécution de la requête
while ($resultat = mysql_fetch_assoc($result_query)) { // la bouche pour afficher les résultats
echo '... ' . $resultat["name_option"] . '...' // quel que soit le nombre de lignes ou résultats -> 1 requête
}
Mais si je me trompe, quelqu'un viendra rectifier :wink:

Re: Récupérer valeur de champs dans une table

par antitrust56 » 26 août 2009, 12:49

Oui, ça me convient mais je voudrais faire une fonction pour éviter de faire une requête à chaque fois que je veux afficher la valeur d'un champs.

Re: Récupérer valeur de champs dans une table

par Dr@ke » 26 août 2009, 12:44

Je possède actuellement une table de stocker des variables dans le champ 'name_option' avec sa valeur correspondant dans le champ 'value_option'.
Je souhaiterais pouvoir afficher chaque valeur mais je vois pas trop comment m'y prendre du fait que je fais référence à la valeur du champ dans cet exemple et non son nom.
Bien tu fais une Sql Querry avec un SELECT pointant sur name_option et tu demandes d'afficher toutes les valeurs correspondantes.
Mais pas certain, que ce soit ta question, ou d'avoir bien compris ta question, car je ne voie pas le soucis avec les valeurs ici...

Si c'est pour afficher une valeur particulière, tu utilises genre WHERE name_option='value_option' ...

Récupérer valeur de champs dans une table

par antitrust56 » 26 août 2009, 12:25

Bonjour à tous,

Je possède actuellement une table de stocker des variables dans le champ 'name_option' avec sa valeur correspondant dans le champ 'value_option'.

Je souhaiterais pouvoir afficher chaque valeur mais je vois pas trop comment m'y prendre du fait que je fais référence à la valeur du champ dans cet exemple et non son nom.

Je veux par exemple afficher la valeur 'Mon site' en spécifiant le valeur 'nom_site'.

Champs : id_option | name_option | value_option

1 | nom_site | Mon site
2 | url_site | http://www.monsite.com
3 | email_expediteur | [email protected]
4 | email_envoi | [email protected]
5 | .............. : ................

Merci pour votre aide,

José