Passer variable dans un SELECT

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 : Passer variable dans un SELECT

Re: Passer variable dans un SELECT

par xTG » 24 janv. 2013, 17:35

par contre les variables par exemple dans les clauses WHERE, AND... doivent être entre quotes.
Sous réserve de format non numérique, il me semble que si MySQL accepte des quotes autour d'un entier ce n'est pas le cas de tout SGBD.

Re: Passer variable dans un SELECT

par AB » 24 janv. 2013, 17:28

C'est assez simple, les champs mentionnés ne doivent pas être entre quotes (ni double quotes), par contre les variables par exemple dans les clauses WHERE, AND... doivent être entre quotes.
Pour voir le résultat le plus simple est d'écrire sa requête séparément puis ensuite de l'exécuter. Cela permet de faire un echo pour voir comment la requête est écrite.
Par exemple :
$infoToGet = "field_name, field_value";

$query = "SELECT ".$infoToGet." FROM kel_cf7dbplugin_submits";

// pour vérif débuggage
echo $query;

// exécution de la requête
$critereLastClassPerso = $wpdb->get_results($query);

Re: Passer variable dans un SELECT

par atrix » 23 janv. 2013, 19:41

Merci ça marche.

Je sais jamais en PHP quand il faut mettre ".." ou '".'" ou ". ou je sais pas trop quoi ;)

Re: Passer variable dans un SELECT

par AB » 23 janv. 2013, 19:36

Code : Tout sélectionner

"SELECT ".$infoToGet." FROM kel_cf7dbplugin_submits"

Passer variable dans un SELECT

par Atrix » 23 janv. 2013, 17:49

Bonjour,

j'aimerai passer une variable pour le SELECT d'une requete comme ceci :

Code : Tout sélectionner

$infoToGet = "field_name, field_value" ; $critereLastClassPerso = $wpdb->get_results("SELECT '".$infoToGet."' FROM kel_cf7dbplugin_submits);
Mais ça ne fonctionne pas. Est-il possible de mettre une variable comme ceci ?

Merci.