Requete sql avec la variable php

Résolu
cs_soussan Messages postés 53 Date d'inscription vendredi 14 mai 2004 Statut Membre Dernière intervention 23 juin 2008 - 9 oct. 2006 à 19:19
daz59000 Messages postés 7 Date d'inscription jeudi 31 janvier 2008 Statut Membre Dernière intervention 15 avril 2008 - 3 avril 2008 à 08:59
slt
j'ai un champs qui peut contenir des paraghraphe et je veux faire la selection sur ce champs à partir d'une zone de texte de recherche. je veux faire la selection des champs qui peuc contenir le mot tappé par l'utilisateur
si vs pouvez me corriger ma faute :
"select * from devis where desig LIKE '".%$_POST['rech']%."

6 réponses

JulSoft Messages postés 354 Date d'inscription dimanche 3 juin 2001 Statut Membre Dernière intervention 11 mars 2013
9 oct. 2006 à 20:24
je dirai

"select * from devis where desig LIKE '%".$_POST['rech']."%'"

mais je fais ça de tête donc ça peut ne pas marcher...
3
cs_soussan Messages postés 53 Date d'inscription vendredi 14 mai 2004 Statut Membre Dernière intervention 23 juin 2008
9 oct. 2006 à 21:33
merci pour ton aide, ca marche. Merci
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
10 oct. 2006 à 09:12
Merci de valider les réponses qui fonctionnent (là, je l'ai fait moi-même).
0
webdeb Messages postés 488 Date d'inscription samedi 5 avril 2003 Statut Membre Dernière intervention 31 mars 2009 4
10 oct. 2006 à 10:42
Le SELECT * est déconseillé. Préfère SELECT champ1, champ2, champ3...
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
daz59000 Messages postés 7 Date d'inscription jeudi 31 janvier 2008 Statut Membre Dernière intervention 15 avril 2008
2 avril 2008 à 10:24
Bonjour tlm

J'ai aussi un pb avec ma requete SQL dans laquelle je voudrais inserer une variable PHP.

Quelqu'un pourrait il me donner la syntaxe exacte pour une telle requete?
Surtout au niveau des quotes, des guillemets, etc.
a titre d'exemple, voici ma requete:

$prenom = mysql_query("SELECT prenom FROM référents WHERE login LIKE ' " . $login . " ' " );
echo Bonjour $prenom, vous etes bien connecté! ;

--> J'ai mis des espace pour plus de lisibilité, dans mon code ca donne ... LIKE '" . $login . "'");
 Le plus ettonant, c'est que la requete ne me renvoie pas d'erreur mais pas ce que j'attend a savoir

J'attend ceci:
"Bonjour Patrick, vous etes bien connecté!"

et SQL me renvoie:
"Bonjour Resource id "egal barré" 3 , vous etes bien connecté!"
ou, si je bidouille dans les quotes , guillemets, ca donne
"Bonjour "chaine vide" , vous etes bien connecté!"

Si quelqu'un pouvait eclairer ma lanterne.... la je cale completement.. c'est decourageant des fois SQL non? :D

Merci d'avance

DazZ
0
daz59000 Messages postés 7 Date d'inscription jeudi 31 janvier 2008 Statut Membre Dernière intervention 15 avril 2008
3 avril 2008 à 08:59
Re...

J'ai trouvé la solution pour les problemes SQL du genre "Resource id #3 ou #5,.."
Ca pourrait interesser kk1...

Le Pb:
Quand vous faite un echo $variable, SQL vous renvoie "Resource id#3" alors que vous attendiez la valeur de $variable...

La solution:
C'est que votre variable est "multiple" et SQL ne sais pas quel "sous-valeur" de la variable vous renvoyer.

Le code, ca sera plus explicite:

J'ai toujours ma variable $prenom (voir le post précédent).
Si je fais un echo $prenom, SQL me renvoie "Resource id#3"

Donc il faut faire ceci:

$prenom = mysql_query("SELECT prenom FROM référents WHERE login LIKE ' " . $login . " ' " );
sachant que dans ma table référents il y a 2 champs: login, prénom
(c'est important pour la suite)

$var = mysql_fetch_assoc($prenom);

extract($var);

$var  est une variable multiple et contient les champs de ma table ($login et $prénom), qui existent sans que je les ai déclarées explicitement

Me reste donc à faire un echo $prénom et le tour est joué!

J'espere que cela sera utile pour qq'un

A bientot

DazZ
0
Rejoignez-nous