Rechercher : dans
Par :

URGENT!!! Php/MySQL problème

Dernière réponse le 16 jun 2008 à 13:09:51 zebi331, le 13 jun 2008 à 10:57:28 
 Signaler ce message aux modérateurs

Bonjour,
J'ai réalisé un site s'appuyant sur une base de données de type mysql.
Lors d'une requete banale, mysql me retourne une erreur que je ne comprends pas:

Unknown column 'aaaaa' in 'field list'

Voici le code relatif à mon problème:

<form action="inscription.php" method="post">

				<p>Nom d'utilisateur : <input type="text" name="login" />

					<?php 

						if(!ereg("^[A-Za-z0-9]{4,32}$", $_POST['login']) and $essai == 1)

						{

							echo "Votre nom d\'utilisateur doit comporter entre 4 et 32 caractères";

						}

					?>

				</p>
                                </form>


...
<?php

	if ($_POST)

	{

		$login=$_POST["login"];

		$connexion = mysql_connect("localhost","root","");

		$base="ma_base";

		if (!$connexion)

		{

			die('Impossible de se connecter: ' . mysql_error());

		}

		mysql_select_db($base, $connexion);

		$verifmembre = "SELECT * FROM client WHERE LOGIN = '$login' OR MAIL = '$mail';";

		$result = mysql_query($verifmembre, $connexion);

		if(!$result)

		{

			die("Problème lors de la création de votre compte client" . mysql_error());
 //C'est cette erreur qui est retournée
	 	}

...
Configuration: HP-UX
Mozilla 1.7

1

macgawel, le 13 jun 2008 à 13:03:19

Bonjour.

Déjà, un premier point :
au lieu de faire

$result = mysql_query($verifmembre, $connexion);
if(!$result) {
   die("Problème lors de la création de votre compte client" . mysql_error());
}

Tu peux faire
$result = mysql_query($verifmembre, $connexion) or die ("Problème lors de la création de votre compte client" . mysql_error());

C'est un peu plus lisible. Quant à l'efficacité, c'est ce système qui est utilisé un peu partout, donc...

Profites-en pour mettre un test sur ta fonction
mysql_select_db($base, $connexion) or die ("Erreur de connexion à la base ".mysql_error());

Sil n'y a pas de problème de ce côté :
- Teste avec juste
$result = mysql_query($verifmembre)

- Essaye avec une requête "triviale" (SELECT * FROM CLIENTS", par exemple)

Répondre à macgawel

2

zebi331, le 13 jun 2008 à 16:09:53

Ca ne marche toujours pas. personne d'autre n'a quelque chose à me proposer? SVP ;)

Répondre à zebi331

4

 macgawel, le 16 jun 2008 à 13:09:51

ca ne marche toujours pas
C'est à dire ?

Tu as un message d'erreur, ça ne fait pas ce que tu veux, autre ?

Si tu ne connais pas la ligne qui cause l'erreur, tu peux mettre des echo entre chaque instruction, ça aidera à trouver le problème.
Et tu as essayé de passer la requête dans phpMyAdmin (par le biais d' echo $verifmembre;) ?

Répondre à macgawel

3

Christounet, le 13 jun 2008 à 16:19:55

Bonjour,

Peux-tu essayer le code suivant

$verifmembre = "SELECT * FROM client WHERE LOGIN = '" .$login. "' OR MAIL = '" .$mail. "'";

et je ne vois pas non plus où tu déclare la variable $mail mais c'est peut-être juste une erreur de copier/coller

A plus Il vaut mieux se tromper et le reconnaître que ne pas se tromper et le nier ! Je me trompe ?
(Philippe Geluck)

Répondre à Christounet