Enchere [Résolu]

Signaler
Messages postés
30
Date d'inscription
mardi 8 avril 2014
Statut
Membre
Dernière intervention
29 avril 2014
-
Messages postés
32944
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
12 juin 2021
-
bonjour
je suis entrain de creer une application d'enchere ...
lorsque le client doit saisir la login et password pour entrer a lenchere mais ça marche pour un seul client cad un client saisie la login et la password donc doit etre connecter autre client saisie la login et le password ne marche pas..
quelqu'un svp me donnerr une idee pour corriger ça
MERCI D'AVON

4 réponses

Messages postés
32944
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
12 juin 2021
351
Bonjour,

Rien compris.....
Peux tu reformuler ta question en essayant d'être le plus précis et clair possible ?? ( Avec exemples et/ou code à l'appuie.)

Merci.


Messages postés
30
Date d'inscription
mardi 8 avril 2014
Statut
Membre
Dernière intervention
29 avril 2014

voilà mon code:

<?php

// on teste si le visiteur a soumis le formulaire de connexion
if (isset($_POST['connexion']) && $_POST['connexion'] == 'Connexion') {
 if ((isset($_POST['login']) && !empty($_POST['login'])) && (isset($_POST['pass']) && !empty($_POST['pass']))) {

mysql_connect ('localhost', 'root', '');
mysql_select_db ('base');

 // on teste si une entrée de la base contient ce couple login / pass
 $sql = 'SELECT * FROM users WHERE login="'.($_POST['login']).'" AND password="'.($_POST['pass']).'"';
 $req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
 $data = mysql_fetch_array($req);

 mysql_free_result($req);
 mysql_close();

 // si on obtient une réponse, alors l'utilisateur est un membre
 if ($data[0] == 1) {
  session_start();
  $_SESSION['login'] = $_POST['login'];
  header('Location: menu.php');
  exit();
 }
 // si on ne trouve aucune réponse, le visiteur s'est trompé soit dans son login, soit dans son mot de passe
 elseif ($data[0] == 0) {
  $erreur = 'Compte non reconnu.';
 }
 // sinon, alors la, il y a un gros problème :)
 else {
  $erreur = 'Probème dans la base de données : plusieurs membres ont les mêmes identifiants de connexion.';
 }
 }
 else {
 $erreur = 'Au moins un des champs est vide.';
 }
}
?>

<html>
<head>
<meta charset="utf-8">
<title>Application Web jQuery Mobile</title>
<link href="jquery.mobile.theme-1.0.min.css" rel="stylesheet" type="text/css"/>
<link href="jquery.mobile.structure-1.0.min.css" rel="stylesheet" type="text/css"/>
<link href="../../Users/KSI/Documents/Site sans nom 3/jquery-mobile/jquery.mobile.structure-1.0.min.css" rel="stylesheet" type="text/css">
<script src="jquery-1.6.4.min.js" type="text/javascript"></script>
<script src="jquery.mobile-1.0.min.js" type="text/javascript"></script>
</head>
<body>
<div data-role="page" id="page2">
<div data-role="header" data-theme="b">
  <a href="" data-icon="back" onClick="javascript:history.back()">Retour</a>
   <h1><font face="MS Serif, New York, serif"><font size="4">Contact</font></font></h1>
        
 </div>
 <div data-role="content">
    

    <div class="ui-body ui-body-b ui-corner-all" style="background-image: url(128x128/look.com.ua-1269.jpg)">
    <center>
    <img src="../../Users/KSI/Documents/Site sans nom 3/admin (1).png"width=256 height=256>
<form action="777.php" method="post">
<table width="500">
<tr><td>
Login : <input type="text" name="login" value="<?php if (isset($_POST['login'])) echo htmlentities(trim($_POST['login'])); ?>"><br /></td></tr><br>
<tr><td>
Mot de passe : <input type="password" name="pass" value="<?php if (isset($_POST['pass'])) echo htmlentities(trim($_POST['pass'])); ?>"><br /></td></tr></table>
<table width="350">
     <tr>
      <div data-role="fieldcontain">
      <td>
<input type="submit" name="connexion" value="Connexion""<?php
if (isset($erreur)) echo '<br /><br />',$erreur;
?>"</td></div></tr></table>
</form>
</div></div></div>


</div></div>
</body>
</html>


voila mon code permet de faire la connexion cad saisie login et password pour aller a la page "menu.php"mais ca marche pour une seul client cad j'ai plusieurs client enregistrer dans ma base de donnee donc ma code marche pour la 1er client mais les autres ne marche pas et il affiche l'erreur suivont "Probème dans la base de données : plusieurs membres ont les mêmes identifiants de connexion."
Messages postés
32944
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
12 juin 2021
351
J'ai édité ton message pour y mettre la coloration syntaxique ( les balises de code).
Merci d'y penser dans tes prochains messages..
Plus d'info ici : http://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code
Messages postés
32944
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
12 juin 2021
351
plusieurs membres ont les mêmes identifiants de connexion.
Ca c'est le message d'erreur généré directement par ton TEST if.



 // on teste si une entrée de la base contient ce couple login / pass
 $sql = 'SELECT * FROM users WHERE login="'.($_POST['login']).'" AND password="'.($_POST['pass']).'"';
 $req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
 $data = mysql_fetch_array($req);
//-------------------------------------------------------------------
// Nombre de lignes retournées par la requête:
//-------------------------------------------------------------------
$nb_rows = mysql_num_rows($req);

//-------------------------------------------------------------------
 mysql_free_result($req);
 mysql_close();

//-------------------------------------------------------------------
// Le temps des tests (tu pourras supprimer ce code ensuite)
//-------------------------------------------------------------------
   echo "<p> Resultat de la requête : <br>";
   print_r($data );
   echo "</p>";
//-------------------------------------------------------------------

 // si on obtient une réponse, alors l'utilisateur est un membre
 if ($nb_rows == 1) {
    session_start();
    $_SESSION['login'] = $_POST['login'];
    header('Location: menu.php');
    exit();
  } elseif ($nb_rows == 0) {
   // si on ne trouve aucune réponse, le visiteur s'est trompé soit   dans son login, soit dans son mot de passe
   $erreur = 'Compte non reconnu.';

 } else {  // sinon, alors la, il y a un gros problème :)
   $erreur = 'Probème dans la base de données : plusieurs  membres ont les mêmes identifiants de connexion.';
   $erreur.= "<br>  Nb_rows = ".$nb_rows;
 }



Messages postés
30
Date d'inscription
mardi 8 avril 2014
Statut
Membre
Dernière intervention
29 avril 2014

merci pour la reponse
Messages postés
32944
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
12 juin 2021
351
Si la réponse te convient, merci de penser à passer la discussion en résolu.
( en clicquant sur le lien se trouvant sous le titre de ta question : MARQUER COMME RESOLU).

Merci.