minimouse Posté 21 Mai 2009 Posté 21 Mai 2009 Bonjour, je travaille sur une base de données qui gère les commandes de produits de clients (le client passe commande et je l'enregistre dans la bdd). Je souhaiterais que si le client "Florent" puisse avoir accès à SES informations sur la base de données. Avec ce code s'affichent seulement les informations de Florent <?php function MaConnexion() { $serveur = "mysql5-19"; $login = "login"; $password = "mdp"; $base = "base"; mysql_connect($serveur, $login, $password) or die("Impossible de se connecter au serveur"); mysql_select_db($base) or die("Impossible de sélectionner la base de données");}// Appel à la fonction de connexion au début du scriptMaConnexion();// Recherche des catégories$reponse = mysql_query("SELECT nom, client FROM commande WHERE client='Florent'");while ($donnees = mysql_fetch_array($reponse) ){?><?php echo $donnees['nom']; ?> commande de mr ou mme <?php echo $donnees['client']; ?><br /><?php}mysql_close();?> Ma question est la suivante : comment faire pour que Pierre puisse avoir accès à ses informations (sans voir celles de Florent) ? Merci d'avance pour votre aide
Tizel Posté 21 Mai 2009 Posté 21 Mai 2009 Au moment où le client s'identifie, tu enregistre son identifiant quelque part, et tu ne génère des requêtes qui ne concernent que l'identifiant en question. Ta requete devient "SELECT nom, client FROM commande WHERE client=\'$id_client\'" Tizel
minimouse Posté 21 Mai 2009 Auteur Posté 21 Mai 2009 Merci Tizel pour ta réponse, tu enregistre son identifiant quelque part : l'identifiant est déjà donné au client - il n'a plus qu'à s'identifier. J'ai testé ta "formule" et j'ai eu un message d'erreur Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /homez.53/...php on line 20
coco2009 Posté 21 Mai 2009 Posté 21 Mai 2009 (modifié) Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /homez.53/...php on line 20 signifie qu'il n'y pas de resultats retournés pour palier ce pb il faut que tu testes le résultat : [...] $reponse = mysql_query("SELECT nom, client FROM commande WHERE client='Florent'"); if($reponse){ while ($donnees = mysql_fetch_array($reponse) ) { ?> <?php echo $donnees['nom']; ?> commande de mr ou mme <?php echo $donnees['client']; ?><br /> <?php } } [...] comment stockes-tu l'identifiant du client ? Modifié 21 Mai 2009 par coco2009
minimouse Posté 22 Mai 2009 Auteur Posté 22 Mai 2009 merci pour ta réponse coco2009, ma table s'appelle commande et j'ai un champ "client" ou sont stockés tous les noms des clients. ce code me donne les résultats pour Florent $reponse = mysql_query("SELECT nom, client FROM commande WHERE client='Florent'");on est d'accord ? mais j'aimerais que : si comme identifiant je tape Michel les informations sur la commande de Michel s'affichent,si comme identifiant je tape Paul les informations sur la commande de Paul s'affichent ... les identifiants sont déjà dans ma bdd.
Dadou Posté 22 Mai 2009 Posté 22 Mai 2009 Il est ou le problème, il y a juste à remplacer Florent par l'identifiant souhaité
minimouse Posté 22 Mai 2009 Auteur Posté 22 Mai 2009 ok, mais vu que j'ai plusieurs identifiants comment tu spécifies la condition au niveau du code : si c'est x alors il donne les informations de x mais si c'est y il donne les informations de y
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant