Précédent   Forum des professionnels en informatique > PHP > Langage > Sessions
Sessions Forum d'entraide sur les sessions avec PHP. Avant de poster -> FAQ sessions, Cours sessions et Sources sécurité
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 10/01/2011, 10h02   #1
Candidat au titre de Membre du Club
 
Inscription : juillet 2003
Messages : 66
Détails du profil
Informations forums :
Inscription : juillet 2003
Messages : 66
Points : 13
Points : 13
Par défaut Erreur mysql de variables inconnues

Bonjour à tous....

J'essaie depuis un moment de tester un script d'authentification, mais je ne parvient pas, sur signalement d'erreur SQL, à trouver la solution au problème. Il me signale aux lignes 2 et 3 du code ci-dessous Undefined index sur les variables Identifiant et Password qui pourtant existent bien dans la table.

Ca n'est tout de même qu'une bête affectation.... Je ne comprends pas.

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
 
<?php
 
	//include ("fonc2.php");
	$user = $_POST['Identifiant'];
	$pass = $_POST['Password'];
 
	if ((!IsSet($user))||(!IsSet($pass))){							/*Pas de pseudo saisi*/
		$user="moi";
		$pass="";		
		/*On donne ici, les accès de consultation uniquement*/
		?>
		<HTML>
			<HEAD>
				<TITLE>Connection</TITLE>
				<META http-equiv="Content-Language" content="fr">
				<META http-equiv="Content-Type" content="text/html; charset=windows-1252">
			</HEAD>
 
			<BODY bottommargin="0" topmargin="20" leftmargin="20" rightmargin="0">
 
			<B>Titre </B><BR><BR>
			<FORM name="index2" method="post" action="index2.php">
				Identifiant : <input type = "text" name="Identifiant"/><br/>
				Mot de passe : <input type = "text" name="Password"/><br/>
				<input type="submit" name="valider" value="Connection">
			</FORM>
		<?php
		include "consultation.php";
	}else{															/*Pseudo saisi*/
		/*Connexion MySql */
		$mysql = mysql_connect("localhost","$user","$pass");
		if (!$mysql){
			echo "Imposible de se connecter à la base.";
			exit;
		}
		/* Choix de la base */
		$base = mysql_select_db($mysql, "Gestion2");
		if (!$base){
			echo "Imposible de trouver la base.";
			exit;			
		}
		/*Interrogation de la base */
 
		echo $user;
		$rq= "SELECT * FROM utilisateur WHERE
		user ='". Identifiant ."' and pass='". Password ."'";
 
		$resultat=mysql_query($mysql,$rq) or die("erreur MySQL :" .mysql_error());
		$nombre=mysql_num_rows($resultat);
		$enreg=mysql_fetch_array($resultat);
		$n_district=$enreg["N0_District"];
 
		if ($nombre>0){
			//Combinaison user/pass correcte
			echo "<H>Bienvenue. </H1>
			<P>Accès en modification de données.</P>";
			include "modif.php";
		}else{
			//La combinaison user/pass est incorrecte
			echo "<H>accès restreint. </H1>
			<P>Vous ne pourrez que consulter les données.</P>";
			include "consultation.php";
		}
	}	
?>
Pourriez-vous me dépanner ?

Merci beaucoup d'avance.
Zhebulon est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/01/2011, 11h26   #2
Rédacteur/Modérateur
 
Avatar de MaitrePylos
 
Homme Gérard Ernaelsten
DBA & Dev PHP
Inscription : juin 2005
Messages : 3 174
Détails du profil
Informations personnelles :
Nom : Homme Gérard Ernaelsten
Âge : 39
Localisation : Belgique

Informations professionnelles :
Activité : DBA & Dev PHP
Secteur : Service public

Informations forums :
Inscription : juin 2005
Messages : 3 174
Points : 6 460
Points : 6 460
Tu confonds les string de connexion à ta base de données avec les users qui pourrais se trouvé dans tes tables.

Code :
1
2
 
$mysql = mysql_connect("localhost","$user","$pass");
Ici, tu dois passer en paramètres l'utilisateur de ta base de données et non pes ceux qui pourrais utiliser ton appli.
MaitrePylos est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/01/2011, 13h04   #3
Candidat au titre de Membre du Club
 
Inscription : juillet 2003
Messages : 66
Détails du profil
Informations forums :
Inscription : juillet 2003
Messages : 66
Points : 13
Points : 13
Bonjour et merci MaitrePylos....

Tu veux dire qu'il faut passer l'identifiant admin et son mot de passe en dur dans ce code ? Il faudra donc ensuite que je créé un nouveau script pour la connection des utilisateurs?

J'ai récupéré ce code dans un bouquin d'aide au PHP que je trouve franchement pas bien explicite, alors, si tu veux bien m'excuser, alors je suis largement pommé dans ces gestions de sessions.

Où faudra t'il donc par rapport à çà, que je récupère ce coup-ci les identifiants et mot des passes des utilisateurs autorisés ?

Merci beaucoup pour ta réponse...
Zhebulon est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/01/2011, 13h40   #4
Rédacteur/Modérateur
 
Avatar de MaitrePylos
 
Homme Gérard Ernaelsten
DBA & Dev PHP
Inscription : juin 2005
Messages : 3 174
Détails du profil
Informations personnelles :
Nom : Homme Gérard Ernaelsten
Âge : 39
Localisation : Belgique

Informations professionnelles :
Activité : DBA & Dev PHP
Secteur : Service public

Informations forums :
Inscription : juin 2005
Messages : 3 174
Points : 6 460
Points : 6 460
1) apprend à te connecter à MySQL (en utilisant MySQLi ).
2) Essaye de retourner quelque ligne d'une de tes tables.

Quand tu sauras faire les deux, tu y verra plus clair dans ton.

La FAQ PHP de ce Forum te seras très utlile, puisque les réponses s'y toruvent.
MaitrePylos est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 18h41.


 
 
 
 
Partenaires

Hébergement Web