solidaritok Posté 23 Mars 2008 Partager Posté 23 Mars 2008 Bonjour, Comment faire fonctionner cette requête svp? <?php $query= 'SELECT $varinit FROM people order by mail';?> $varinit est concaténée ici à partir de la sélection du formulaire <?php$varinit="mail";$coma=",";if (isset($ok)) { foreach ($site as $choix) { $varinit=$varinit.$coma.$choix; }} ?> Sélections du formulaire : <form action="<?$PHP_SELF;?>" method="post">Les champs que vous voulez afficher :<input type="checkbox" name="site[]" value="prenom"> Prénom<input type="checkbox" name="site[]" value="nom"> Nom<input type="checkbox" name="site[]" value="ville"> Ville<input type="submit" value="valider" name="ok"></form> En vous remerciant, amicalement, Guy Lien vers le commentaire Partager sur d’autres sites More sharing options...
pluriels Posté 23 Mars 2008 Partager Posté 23 Mars 2008 pour utiliser les variables directement dans une chaine de caractères, il faut utiliser les doubles cotes. $query= "SELECT $varinit FROM people order by mail"; autre technique : $varinit = implode($coma,$site); Lien vers le commentaire Partager sur d’autres sites More sharing options...
Dadou Posté 23 Mars 2008 Partager Posté 23 Mars 2008 tout bêtement comme ça : <?php$query= "SELECT $varinit FROM people order by mail";?> Lien vers le commentaire Partager sur d’autres sites More sharing options...
Kioob Posté 23 Mars 2008 Partager Posté 23 Mars 2008 bonsoir, tu n'aurais pas un peu beaucoup oublié le mysql_real_escape_string() ? Lien vers le commentaire Partager sur d’autres sites More sharing options...
smile Posté 24 Mars 2008 Partager Posté 24 Mars 2008 $query= 'SELECT '.$varinit.' FROM people order by mail'; Lien vers le commentaire Partager sur d’autres sites More sharing options...
solidaritok Posté 25 Mars 2008 Auteur Partager Posté 25 Mars 2008 <?php$query= "SELECT $varinit FROM people order by mail";$query= 'SELECT '.$varinit.' FROM people order by mail';?> tous deux donnent 'erreur résultat de la requete' pourquoi la variable $site? dans $varinit = implode($coma,$site); c'est quoi le mysql_real_escape_string() ? Lien vers le commentaire Partager sur d’autres sites More sharing options...
captain_torche Posté 25 Mars 2008 Partager Posté 25 Mars 2008 Que te donne un "echo $query" ? Lien vers le commentaire Partager sur d’autres sites More sharing options...
pluriels Posté 25 Mars 2008 Partager Posté 25 Mars 2008 (modifié) <?php$varinit="mail";$coma=",";if (isset($ok)) {foreach ($site as $choix) {$varinit=$varinit.$coma.$choix;}}?> est équivalent à : <?php$coma=",";$varinit = implode($coma,$site);?> la variable $site est celle que tu utilises dans ton script... Modifié 25 Mars 2008 par pluriels Lien vers le commentaire Partager sur d’autres sites More sharing options...
max971 Posté 3 Avril 2008 Partager Posté 3 Avril 2008 perso pour la requête je ferais comme ca avec un mysql_error pour avoir un peu plus d'infos sur ton erreur... $query= "SELECT ".$varinit." FROM people order by mail";$resultat= mysql_query($query) or die(mysql_error()); Lien vers le commentaire Partager sur d’autres sites More sharing options...
Anonymus Posté 4 Avril 2008 Partager Posté 4 Avril 2008 +1 et entre les 2 lignes, j'ajouterais ce que disait captain_torche, à savoir un 'echo'. Tu regardes ce que donne le '$varinit' > Si ca correspond bien à ce que tu attends, tu copies/collles le contenu dans phpmyadmin pour voir le resultat qu'il trouve, et le cas échéant, tu nous postes le résultat tu mysql_error. c'est quoi le mysql_real_escape_string() ? C'est une occasion de lire > http://fr.php.net/manual/fr/function.mysql...cape-string.php Lien vers le commentaire Partager sur d’autres sites More sharing options...
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant