begin process at 2012 05 28 10:30:39
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive PHP

 > 

Archives

 > 

AU SECOURS !!!

 > 

affichage de champs


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

affichage de champs

jeudi 15 septembre 2005 à 14:21:47 | affichage de champs

chris tuckers

Bonjour, alors, c'est une question top urgente et je bloque dessus depuis ce matin. Dans une page, je désirais voir renseigner deux tables. Voici lapremière manipulation que j'ai fait et qui fonctionne :


<? include "_connexion.php" ?>
<?php
// On démarre la session
session_start();
$loginOK = false;  // cf Astuce

// On n'effectue les traitement qu'à la condition que
// les informations aient été effectivement postées
if ( isset($_POST) && (!empty($_POST['login'])) && (!empty($_POST['password'])) ) {

  extract($_POST);  // je vous renvoie à la doc de cette fonction

  // On va chercher le mot de passe afférent à ce login
  $sql = "SELECT *  FROM clients WHERE cli_id = '".addslashes($login)."'";
  $req = mysql_query($sql) or die('Erreur SQL : <br />'.$sql);
 
 
  // On vérifie que l'utilisateur existe bien
  if (mysql_num_rows($req) > 0) {
     $data = mysql_fetch_assoc($req);
   
    // On vérifie que son mot de passe est correct
    if ($password == $data['cli_pass']) {
      $loginOK = true;
    }
  }
}

// Si le login a été validé on met les données en sessions
if ($loginOK) {
  $_SESSION['cli_id'] = $data['cli_id'];
  $_SESSION['cli_pass'] = $data['cli_pass'];
  $_SESSION['cli_ste'] = $data['cli_ste'];
  $_SESSION['cli_adresse'] = $data['cli_adresse'];
  $_SESSION['cli_adresse2'] = $data['cli_adresse2'];
  $_SESSION['cli_ville'] = $data['cli_ville'];
  $_SESSION['cli_cp'] = $data['cli_cp'];
  $_SESSION['cli_contact'] = $data['cli_contact'];
  $_SESSION['cli_tel'] = $data['cli_tel'];
  $_SESSION['cli_email'] = $data['cli_email'];
  $_SESSION['cli_banque'] = $data['cli_banque'];
  $_SESSION['cli_guichet'] = $data['cli_guichet'];
  $_SESSION['cli_code'] = $data['cli_code'];
  $_SESSION['cli_compte'] = $data['cli_compte'];
  $_SESSION['cli_cle'] = $data['cli_cle'];


Maintenant, j'aimerais faire afficher des champs provenant de la table contrats. Je peux vous dire que la table clients est reliée à la table contrat par le cli_id. Quelle modification dois-je effectuer sur ma requete pour pouvoir faire afficher ces deux tables. Merci !!!!!

chris tuckers, l'as de coeur 

jeudi 15 septembre 2005 à 16:02:31 | Re : affichage de champs

xactise

Membre Club
"Voici lapremière manipulation que j'ai fait " bizard ce code me dit vaguement quelque chose es tu sur que TU la fait ;) c sur que c'est pas evident de trifouiller les code des autres
jeudi 15 septembre 2005 à 22:44:56 | Re : affichage de champs

FhX

Mais non ! Mais non ! Mais non !
Combien de fois je vais devoir vous le répéter !!!! :D

extract($_POST);  // je vous renvoie à la doc de cette fonction
On ne fait JAMAIS un extract d'une variable superglobal avec les risques de sécurités qui s'y collent ! C'est pourtant compréhensible, si on vire ca dans le php.ini, c'est certainement pas pour le voir dans le script PHP !

// On va chercher le mot de passe afférent à ce login
  $sql = "SELECT *  FROM clients WHERE cli_id = '".addslashes($login)."'";

Double faux ! On recherche si le login ET le mot de passe existe pour 1 SEUL enregistrement ! De plus, on n'utilise pas SELECT * mais on nomme ses champs !

Je te le refait ...
<?php
//je nomme pas les champs, débrouille toi pour ca :p
$sql = "SELECT *  FROM clients WHERE cli_id = '".addslashes($login)."'" AND cli_pass = $password";
$query = mysql_query($sql);
 if ( mysql_num_rows($sql) === 1 ) {
    $data = mysql_fetch_array($sql);
     foreach ($data as $key=>$val) {
         $_SESSION[$key] = $val;
     }
 } else {
  $error = true;
 }
?>
C'est pas dur et c'est plus propre pourtant !

Pour ta question :
SELECT clients.cequetuveux, contrats.cequetuveux  FROM clients, contrats WHERE clients.cli_id = contrats.cli_id


Cette discussion est classée dans : login, data, session, post, cli


Répondre à ce message

Sujets en rapport avec ce message

Sessions ... [ par ZuGbEn ] Est-ce que vous pensez que si je fait un système de login comme cela : <span style="color: rgb(165, 42, 4 Probleme de requete mysql [ par momoxe ] Bonjour, j'ai fait un code en php pour mon site web et il ne fonctionne pas.A chaque fois, mon serveur me renvoie "parse error on line 5, ce qui corre Problème avec les sessions ! [ par nikoland ] [code]            // on ouvre la session        session_start() ;        //GROS Encore et toujours les sessions [ par chris tuckers ] Hi !J'ai encore et toujours un problemes de session.Voici les données que je mets en session :if ($loginOK) {$_SESSION['id_admin'] = $data['id_admin'] Erreur a l'ouverture de session [ par rouliendelavegas ] Cela commence a m'enerver, j'ai sans cesse cette erreur dés la premiere ligne de mon script:Cannot send session cookie - headers already sent byPourta url non desiré apres un precedent sur le navigateur [ par vbmarh ] bonjours j ai un script qui use des session pour une zone membre une pge connect2.php qui gere les post login mdp vers une page membre.php voici conne [php] petit probleme !! [ par dekovince ] bonjour a tous !!alors voila, je m explique :Un formulaire, une basse de donnee avec une table, et dans cette table un champs qui se nomme compteur !! login [ par azizmatta ] hi i have a problem with this code that let users login to the site.[code]session_start();include('database.php');if (!isset($_SESSION['logged'])) $_S login [ par azizmatta ] ca c'est le code pou la connexion des membres au site. mais quand je fais entrer un valide  username   and   password   ca me donne " Error : wrong u utilisation des sessions [ par ralinis ] Salu a tous.jai un problème avec les sessions en php.d'abord j'ai activer les parametre a on donc le problème ne se pose pas.le code est le suivant:++


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 11,326 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales