Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 15/04/2007, à 12:14

Mononokehime

[Résolu] Syntaxe sql de base...

Salut à tous,

Je voudrais intégrer une variable php dans une requête sql :

$sql_query1 = "SELECT id FROM entrées WHERE entrées.mot=".$entrée."AND entrées.id_langue=.$id_langue_source";

$entrée est une chaîne de caractères
$id_langue_source représente l'id d'un élément de liste déroulante récupéré par GET.

J'obtiens ce message d'erreur :

Warning: pg_query() [function.pg-query]: Query failed: ERREUR: erreur de syntaxe sur ou près de «entrées» at character 50 in /var/www/dico_multilingue.php on line 78

Ca doit sûrement être une erreur bête, mais je ne vois pas...
Merci de votre aide smile.

Dernière modification par Mononokehime (Le 15/04/2007, à 16:51)

Hors ligne

#2 Le 15/04/2007, à 12:16

NiKo973

Re : [Résolu] Syntaxe sql de base...

Ton code n'est pas trop clair, que veux tu faire au juste ?

Hors ligne

#3 Le 15/04/2007, à 12:22

Mononokehime

Re : [Résolu] Syntaxe sql de base...

Je voudrais faire un dictionnaire multilingue en ligne.
$entrée est le mot tapé par l'utilisateur, et la requête que j'ai donnée permet juste de récupérer l'id du mot dans la table entrées (qui liste tous les mots du dictionnaire) en fonction du mot tapé et de la langue source choisis.

Dernière modification par Mononokehime (Le 15/04/2007, à 12:37)

Hors ligne

#4 Le 15/04/2007, à 12:49

qqun

Re : [Résolu] Syntaxe sql de base...

peux tu mettre le definition de la table ?
les entrees.mot ,entrees.id_langue me semble etranges .

si ta table est du type entrees ( mot, id, id_langue ...)
la requete seras du genre :

$sql_query1 = "SELECT id,mot,id_langue FROM entrées WHERE mot='$entrée' AND      id_langue=$id_langue_source ";

#5 Le 15/04/2007, à 12:50

pataluc

Re : [Résolu] Syntaxe sql de base...

bonjour,

tu es sur que mettre des accents dans des noms de tables ca fonctionne? en tout cas si c'est le cas ce n'est pas très propre et il te faut surement les échapper avec des  `` et ca donnerait un truc du genre:

$sql_query1 = "SELECT id FROM `entrées` WHERE `entrées`.mot=".$entrée."AND `entrées`.id_langue=.$id_langue_source";

Hors ligne

#6 Le 15/04/2007, à 12:52

Zapan

Re : [Résolu] Syntaxe sql de base...

Bonjour,
Premièrement, tu ne devrais pas utiliser d'accents.
Ensuite remplace entrées.mot par mot , et entrées.id_langue par id_langue. Et si mes souvenirs sont exactes.

De plus comme tu utilises des double quotes (") tu n'as pas besoin de les concatener avec les variables ( mot=$entree à la place de mot=".$$entree." )

Hors ligne

#7 Le 15/04/2007, à 12:59

Mononokehime

Re : [Résolu] Syntaxe sql de base...

Ca marche parfaitement, merci beaucoup qqun, ça m'a complètement débloquée big_smile.
Et visiblement les accents ne posent pas de problème. Pataluc, pourquoi dis-tu que ce n'est pas très propre de mettre des accents dans les noms de table ?

Dernière modification par Mononokehime (Le 15/04/2007, à 13:15)

Hors ligne