# PHP > PHP & Base de donnes > [MySQL] erreur champ ' ' inconnu dans where clause

## j2eejsp

salut tout le monde,

une partie de mon code fonctionne ainsi
je rcupre la valeur login de mon formulaire puis je cherche est ce quelle existe dans ma base.sachant que la valeur du test que j'utilise n'est pas dans ma table ce qui est normal c'est que je dois pas avoir des erreurs mais malheureusement j'ai une erreur que vous trouverez dans le dossier zip.

vous trouverez ci joint mon code
aidez moi svp

----------


## sabotage

Bonjour,

N'oublie pas de proteger les variables que tu injectes dans des requetes.

Si ton champ login est une chaine, il faut l'encadrer de guillemets.


```

```

Je suis par contre un peu perplexe sur l'erreur que tu nous indiques.
Tu pourrais nous l'indiquer en entier et nous dire sur quelle ligne elle se produit ?

----------


## j2eejsp

salut,
si je vous ai donne l'erreur telle qu'elle s'affiche sur mon cran j'ai mme donn une copie de la page pour que vous puissiez avoir une ide sur le problme .
pour mieux vous expliquer les champs que j'ai sont tous des chanes de caractres dans la base donc pourquoi faire un changement donc????

mais ce que vous m'avez donn maintenant comme solution n'a pas rgl le problme.

----------


## Kerod

Es-tu sr que le champ existe dans la table ?? C'est la seule source d'erreur possible...

----------


## j2eejsp

salut,

je suis sure et certaine que la table ne contient pas  le login que je sais en plus la table est vide elle ne contient rien de rien

merci pour votre aide

----------


## Kerod

Peux-tu nous fournir les lments suivants, stp : 

La structure de la table (pas le contenu)La requte SQL qui est effectue si elle est diffrente de celle du fichier en pice jointe
 ::merci::

----------


## j2eejsp

salut,
voila la sructure de la table


```

```

et pour la requte elle est la meme et j'ai ajoute le changement qu'on m'a propose au debut a propose de le convertion du type de la variable

merci pour votre aide

----------


## Kerod

Essayes avec cette portion de code : 


```

```

L'erreur que tu nous as donn dans le zip, c'est celle issue du mysql ou c'est une erreur personnalise que tu envoies ??  ::roll:: 
Je demande a parce que c'est pas normal d'obtenir cette erreur et ce mme si log est vide et de mme pour la table.

----------


## sabotage

Il te manque les guillemets partout :


```

```

En tout cas je me demande bien d'ou sort ton message d'erreur parce qu'avec ton code de dpart j'obtiens un classique



> You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1

----------


## j2eejsp

salut,
j'ai essaye ce que vous venez de me donnez et j'ai toujours le meme probleme?
pour l'erreur j'ai enregistrer la page a pertir de mon seveur telle qu'elle est et je lai mis dans le dossier zip
je vous explique:
1)fsfgg: ne sont que des lettres que jai mis pour savoir est ce que mon serveur poste sur la page php ou non car javais un autre probleme au debut que jai resolu.
2)succes de connexion: un message que jai mis pour savoir est ce que je me connecte a la base ou non
3)Champ 'bousta' inconnu dans field list: c'est celle la lerreur qui minteresse maintenant le mot bousta c'est le login que je saisi pour tester le programme.

merci infiniment pour votre aide

----------


## Kerod

Testes la requte dans phpmyadmin pour voir le rsultat... 	


```
SELECT * FROM authentification WHERE LOGIN = 'bousta';
```

Et quel est-il ?

@Sabotage : effectivement, j'ai saut toute cette partie  ::aie::

----------


## j2eejsp

salut,
d'apres mes modestes connaissances dans le langage php car je suis une debutante et j'apprend php toute seule, je crois que les simples cotes sont a mettre pour une valeur comme 'alain' sinon si jai une variable c'est pas obligatoire de les mettre.
si c'est faux vous me le dites svp

merci d'avance

----------


## sabotage

en fait ici tu reconstitues une chaine SQL.
dans ta chaine SQL au final tes valeurs, lorsqu'elle ne sont pas numeriques, doivent etre encadrs de guillemets (mysql est gentil est prends simple ou double).
exemple


```

```

Teste la requte dans phpmyadmin comme te l'indique Kerod et redonne nous ton code actuel avec les modifications que tu as faites.

----------


## j2eejsp

salut
j'ai reussis grace a vos remarques et vos conseils,j'ai fait les simples cotes que vous m'avez demande et le probleme que j'ai decouvert c'est qu'il fallait mettre une insertion suivant la logique de ma base avant lautre voila le dernier code.


```

```

merci infiniment ::king::

----------

