Rechercher : dans
Par :

Probleme php forum Unknown column in where..

Dernière réponse le 11 jun 2008 à 19:26:00 salamandre51, le 11 jun 2008 à 19:14:09 
 Signaler ce message aux modérateurs

Bonjour,
Je suis en train de créer un forum, et je suis bloqué à une erreur ^^'
J'explique, l'utilisateur entre son pseudonyme et son mot de passe afin de s'identifier, puis est redirigé vers une page nommée connexionok où sont vérifiés son pseudo et mot de passe.

Mais lorsque je rentre le nom d'utilisateur, php me dit : Unknown column 'salamandre51' in 'where clause'

Alors je vous donne mon code, en espérant que vous puissiez m'aider !
<?php
session_start();

// Message

if (empty($_POST['pseudo']) || empty($_POST['password']) ) //Oublie d'un champ
{
$message = '<p>une erreur s est produite pendant votre identification.
Vous devez remplir tous les champs
Cliquez <a href="./connexion.php">ici</a> pour revenir</p>';
}
else
{
//Acces interdit : le membre est déjà connecté
if (isset($_SESSION['pseudo']))
{
$message ='<p>Désolé mais vous ne pouvez
pas accéder à cette page</p>';
}
else // Autorisation ok : il reste à voir le mot de passe
{
include("includes/identifiants.php");
mysql_connect($adresse, $nom, $motdepasse);
mysql_select_db($database);

//On enlève les balises html éventuelles

$pseudo = htmlspecialchars($_POST['pseudo'], ENT_QUOTES);
$password = htmlspecialchars($_POST['password'], ENT_QUOTES);

$requete1 = mysql_query('SELECT membre_mdp, membre_id, membre_rang
FROM forum_membres WHERE membre_pseudo = '.$pseudo)
or die (mysql_error());
$data1 = mysql_fetch_assoc($requete1);


if ($data1['membre_mdp'] == md5($password)) // Acces OK !
{

$_SESSION['pseudo'] = $pseudo;
$_SESSION['level'] = $data1['membre_rang'];
$_SESSION['id'] = $data1['membre_id'];

$message = '<p>Bienvenue '.$_SESSION['pseudo'].',
vous êtes maintenant connecté!</p>
<p>Cliquez <a href="./index.php">ici</a>
pour revenir à la page d accueil</p>';

}
else // Acces pas OK !
{
$message = '<p>Une erreur s est produite
pendant votre identification.
Le mot de passe ou le pseudo entré n est pas correcte.
Cliquez <a href="./connexion.php">ici</a>
pour revenir à la page précédente
<br /><br />
Cliquez <a href="./index.php">ici</a>
pour revenir à la page d accueil</p>';
}
}
}
//Ici seulement on affiche la page
include("includes/debut.php");
?>
<div id="banniere"></div>


<div id="corps_forum">
<?php
echo $message;
?>
</div>
</body>
</html>


Merci d'avance !!!

Configuration: Windows XP
Internet Explorer 7.0

Meilleures réponses pour « probleme php forum Unknown column in where.. » dans :
Monter un forum avec phpBB VoirVous voulez ajouter un forum sur votre site et vous n'avez aucune idée de comment faire? Pas de panique, phpBB est fait pour vous. Note importante: Cette FAQ s'adresse à ceux qui ont déjà un hébergeur, car pour mettre en place le forum, il faut...
[PHP] Notice: Undefined index: VoirSi vous utilisez les tableaux $_POST ou $_GET pour récupérer les variables de vos formulaires ou autres, il se peut que vous tombiez sur cette erreur: Notice: Undefined index 'champs du tableau' in 'chemin du fichier php en cours d'execution' on line...
SQL - Restriction VoirExpression des restrictions Une restriction consiste à sélectionner les lignes satisfaisant à une condition logique effectuée sur leurs attributs. En SQL, les restrictions s'expriment à l'aide de la clause WHERE suivie d'une condition logique...

1

 SibylAngel, le 11 jun 2008 à 19:26:00

Bonjour,


Il y a un problème dans la requête SQL (si je ne me trompe pas) :
La condition WHERE est effectuée sur un nom de colonne qui n'est pas dans le SELECT, donc il ne peut pas la trouver.
Il faut ajouter "membre_pseudo" dans les colonnes du SELECT pour pouvoir effectuer un test sur cette colonne.

;)
I hope you're not pretending to be evil while secretly being good. That would be dishonest.

Répondre à SibylAngel
Collection CommentÇaMarche.net