IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

échec d'authentification site web


Sujet :

PHP & Base de données

  1. #1
    Membre averti
    Inscrit en
    Avril 2006
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 55
    Par défaut échec d'authentification site web
    Bonjour,
    Je dois développez un site PHP/MySQL. Je l'ai installé en localhost avec WAMP5 qui regroupe(Apache2,mysql et Php5). le site est PHP4. Je pensais que php5 peut supporter php4. si c'ets pas le cas merci de me tenir au courant.
    Venons -en mon problème. Quand je lance le site (ihttp://localhost/projet/ndex.php) y 'a seulement le formulaire pour le login et mot de passe qui s'afficche. Alors que l'entête devrait s'afficher normalement au-moins. Le vrai problème c'est que j'ai un echec d'authentification dès le premier affichage. même en entrant un bon login et lot de pass j'ai toujours cette erreur. dans le fichier connexion.php j'ai mis comme user "root" et comme pass ' ' c'est à dire rien. la page index.php fait bien appel à connexion.php mais je ne sais pas ce qui se passe.
    merci de votre attention

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    244
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 244
    Par défaut Un peu d'aide
    Bonjour,

    Je voudrai en savoir un peu plus si tu veux de l'aide.

    Du style le message d'erreur pour t'aider à débugger ton code.

    Ou quel type de méthode tu utilise pour envoyer tes identifiant et pwd.

    A+

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    179
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mai 2006
    Messages : 179
    Par défaut
    salut le mieux c'est donner le source et le message d'erreur

  4. #4
    Membre chevronné
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    466
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 466
    Par défaut
    Bonsoir

    Alors si tu souhaite recevoir de l'aide poste nous ton script (entre les balise ) et comme cela nous nous ferons un plaisir de t'aider a resoudre ton probleme .

    Cordialement

  5. #5
    Membre averti
    Inscrit en
    Avril 2006
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 55
    Par défaut
    Bonjour à tous,
    Merci pour votre sollicitude. Je reviens à lal charge avec du code.
    voici le code de la page index.php
    c'est pas moi qui est écrit le code, mais je pense que le login et psw est envoyé par tableau superglobzl $_SESSION.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
     
    <? session_start(); ?>
    <?
    	require_once('connexion.php');
     
    	if (isset($_POST['login'])){ 
    		$login = $_POST['login'];
    		$pass = md5($_POST['pass']);
     
     
     
    		$verif_query=sprintf("SELECT * FROM ref_utilisateur WHERE login='$login' AND pass='$pass'"); 
    		$verif = mysql_query($verif_query) or die(mysql_error());
    		$row_verif = mysql_fetch_assoc($verif);
    		$utilisateur = mysql_num_rows($verif);
     
    		if ($utilisateur) {		    
    			session_register("authentification"); 
     
    			$_SESSION['privilege_session'] = $row_verif['privilege'];
    			$_SESSION['nom_session'] = $row_verif['nom'];
    			$_SESSION['prenom_session'] = $row_verif['prenom'];
    			$_SESSION['login_session'] = $row_verif['login'];
    			$_SESSION['pass_session'] = $row_verif['pass'];
    			$_SESSION['id_ent_session'] = $row_verif['id_ent'];
     
    			$_SESSION['id_user_session'] = $row_verif['id_user'];
     
    			$ident = $row_verif['id_ent'];
    			$querysession = "select * from ref_entreprise where id='$ident' ;";
    			$resultsession = mysql_query($querysession);
    			$valsession = mysql_fetch_array($resultsession);
     
    			$_SESSION['nom_ent_session'] = $valsession['raison_sociale'];
     
    			header("Location:accueil.php"); 
    		}
    		else {
    		header("Location:index.php?erreur=login"); 
    		}
    	}
     
     
     
    	if(isset($_GET['erreur']) && $_GET['erreur'] == 'logout'){ 
    	$prenom = $_SESSION['prenom'];
     
    	if (isset($_COOKIE[session_name()])){
    		setcookie(session_name(), '', time()-999999, '/');
    	}
     
    	session_destroy();
     
    	header("Location:index.php?erreur=delog");
    	}
    ?>
    <? $createur = "Copyright a Systemes Durables - Développé par LGCD"; ?>
     
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>Authentification :: Presteo v2 :: Programme de Recherche de Synergies sur un territoire </title>
    <link href="styles.css" rel="stylesheet" type="text/css" />
    <meta name="Description" content="Vous devez inscrire ici la description de votre site, ce qui permettra de vous r&eacute;f&eacute;rencer sur le net." />
    <meta name="keywords" content="Placer ici la liste de mots-clé pour le référencement sur les moteurs de recherche" />
     
    </head>
     
     
    <? 
    include("banner.php");
    ?>
     
        <tr>
        <td height="33" background="images/menuH_Bg.gif">&nbsp;</td>
        <td height="33" background="images/menuH_Bg.gif"></td>
        <td height="33" background="images/menuH_Bg.gif">&nbsp;</td>
      </tr>
     
     
      <tr>
        <td height="31" background="images/fade.gif">&nbsp;</td>
        <td height="31" background="images/fade.gif">&nbsp;</td>
        <td height="31" background="images/fade.gif">&nbsp;</td>
      </tr>
      <tr>
        <td>&nbsp;</td>
        <td valign="top"><table width="1000" border="0" align="center" cellpadding="0" cellspacing="0">
        	<tr height="150"></tr>
          <tr>
            <td valign="top">
            </td>
            <td width="34">&nbsp;</td>
            <td width="100%" valign="center" align="center">
     
    				    <form action="" method="post" autocomplete=off name="connect">
    				    <table border="1" align="center" class="texte2" bordercolor="#DDDDDD" cellpadding="4" cellspacing="0" style="border-collapse: collapse;">
    				  	<tr><td>
    				  	<table width="250"  border="0" cellpadding="10" cellspacing="0">
    				            		<tr> 
    				              		<td width="50%" class="texte">Login</td>
    				              		<td width="50%"><input name="login" type="text"  class="boiteFormulaire" id="login"></td>
    				            		</tr>
    				            		<tr> 
    				              		<td width="50%" class="texte">Mot de passe</td>
    				              		<td width="50%"><input name="pass" type="password"  class="boiteFormulaire" id="pass"></td>
    				            		</tr>
    				            		<tr> 
    				              		<td height="34" colspan="2">
    				              			<div align="center">
    				              				<input type="submit" name="Submit" class="boiteFormulaire2" value="Se connecter"></div>
    				                 	</td>
    				            		</tr>
    									<tr> 
    				              		<td height="34" colspan="2">
    				              			<div align="center">
    				              				<a href="pass_perdu.php" class="texte">Impossible d'accéder à mon compte</a></div>
    				                 	</td>
    				            		</tr>
    				          		</table>
    				    </td></tr>
    				    </table>
     
    						</form>
    						<br><br>
     
     
    						<?	if(isset($_GET['erreur']) && ($_GET['erreur'] == "login")) {
    				    ?>
    				    			<p class="annonce2"><img src="images/s_cancel.png"> Echec d'authentification !!! &gt; login ou mot de passe incorrect</p> 
    				    <?	} 
    				    ?>
     
    					<?	if(isset($_GET['perdu']) && ($_GET['perdu'] == "OK")) {
    				    ?>
    				    			<p class="annonce1"><img src="images/s_okay.png"> Demande de prise en charge envoyée à l'administrateur.</p> 
    				    <?	} 
    				    ?>
     
     
    				    <?	if(isset($_GET['erreur']) && ($_GET['erreur'] == "delog")) {
    				    ?>
    				    			<p class="annonce1" align="center"><img src="images/s_okay.png"> D&eacute;connexion r&eacute;ussie.</p> 
    				    <?	} 
    				    ?>
     
    				    <?	if(isset($_GET['erreur']) && ($_GET['erreur'] == "intru")) {
    				    ?>
    				    		<p class="annonce2" align="center"><img src="images/s_cancel.png"> Echec d'authentification !!! &gt; Aucune session n'est ouverte</p> 
    				    		<p class="annonce2" align="center">ou vous n'avez pas les droits pour afficher cette page </p> 
    				    <?	}
    				    ?>
     
     
     
     
            	</td>
            </tr>
        </table></td>
        <td>&nbsp;</td>
      </tr>
     <? 
     include("footer.php");
     ?>
    </table>
    </body>
    </html>
    Ensuite la page d'accueil est affichée par accueil.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
    206
    207
    208
    209
    210
    211
    212
    213
    214
    215
    216
    217
    218
    219
    220
    221
    222
    223
    224
    225
    226
    227
    228
    229
    230
    231
    232
    233
    234
    235
    236
    237
    238
    239
    240
    241
    242
    243
    244
    245
    246
    247
    248
    249
    250
    251
    252
    253
    254
    255
    256
    257
    258
    259
    260
     
    <?php require_once('connexion.php'); ?>
    <?php require_once('session.php'); ?>
     
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>Accueil :: Presteo v2 :: Programme de Recherche de Synergies sur un territoire </title>
    <link href="styles.css" rel="stylesheet" type="text/css" />
    <meta name="Description" content="Vous devez inscrire ici la description de votre site, ce qui permettra de vous r&eacute;f&eacute;rencer sur le net." />
    <meta name="keywords" content="Placer ici la liste de mots-clé pour le référencement sur les moteurs de recherche" />
     
     
    <SCRIPT LANGUAGE="JavaScript" type="text/javascript">
     
    var IB=new Object;
    var posX=0;posY=0;
    var xOffset=10;yOffset=10;
    function AffBulle(texte) {
      contenu="<TABLE border=0 cellspacing=0 cellpadding="+IB.NbPixel+"><TR bgcolor='"+IB.ColContour+"'><TD><TABLE border=0 cellpadding=2 cellspacing=0 bgcolor='"+IB.ColFond+"'><TR><TD><FONT size='-1' face='arial' color='"+IB.ColTexte+"'>"+texte+"</FONT></TD></TR></TABLE></TD></TR></TABLE>&nbsp;";
      var finalPosX=posX-xOffset;
      if (finalPosX<0) finalPosX=0;
      if (document.layers) {
        document.layers["bulle"].document.write(contenu);
        document.layers["bulle"].document.close();
        document.layers["bulle"].top=posY+yOffset;
        document.layers["bulle"].left=finalPosX;
        document.layers["bulle"].visibility="show";}
      if (document.all) {
        //var f=window.event;
        //doc=document.body.scrollTop;
        bulle.innerHTML=contenu;
        document.all["bulle"].style.top=posY+yOffset;
        document.all["bulle"].style.left=finalPosX;//f.x-xOffset;
        document.all["bulle"].style.visibility="visible";
      }
      //modif CL 09/2001 - NS6 : celui-ci ne supporte plus document.layers mais document.getElementById
      else if (document.getElementById) {
        document.getElementById("bulle").innerHTML=contenu;
        document.getElementById("bulle").style.top=posY+yOffset;
        document.getElementById("bulle").style.left=finalPosX;
        document.getElementById("bulle").style.visibility="visible";
      }
    }
    function getMousePos(e) {
      if (document.all) {
      posX=event.x+document.body.scrollLeft; //modifs CL 09/2001 - IE : regrouper l'évènement
      posY=event.y+document.body.scrollTop;
      }
      else {
      posX=e.pageX; //modifs CL 09/2001 - NS6 : celui-ci ne supporte pas e.x et e.y
      posY=e.pageY; 
      }
    }
    function HideBulle() {
    	if (document.layers) {document.layers["bulle"].visibility="hide";}
    	if (document.all) {document.all["bulle"].style.visibility="hidden";}
    	else if (document.getElementById){document.getElementById("bulle").style.visibility="hidden";}
    }
     
    function InitBulle(ColTexte,ColFond,ColContour,NbPixel) {
    	IB.ColTexte=ColTexte;IB.ColFond=ColFond;IB.ColContour=ColContour;IB.NbPixel=NbPixel;
    	if (document.layers) {
    		window.captureEvents(Event.MOUSEMOVE);window.onMouseMove=getMousePos;
    		document.write("<LAYER name='bulle' top=0 left=0 visibility='hide'></LAYER>");
    	}
    	if (document.all) {
    		document.write("<DIV id='bulle' style='position:absolute;top:0;left:0;visibility:hidden'></DIV>");
    		document.onmousemove=getMousePos;
    	}
    	//modif CL 09/2001 - NS6 : celui-ci ne supporte plus document.layers mais document.getElementById
    	else if (document.getElementById) {
    	        document.onmousemove=getMousePos;
    	        document.write("<DIV id='bulle' style='position:absolute;top:0;left:0;visibility:hidden'></DIV>");
    	}
     
    }
     
    </SCRIPT>
    <? $createur = "Copyright a Systemes Durables - Développé par LGCD" ?>
     
     
    </head>
     
    <SCRIPT language="JavaScript">InitBulle("navy","#FFCC66","orange",1);
    // InitBulle(couleur de texte, couleur de fond, couleur de contour taille contour)
    </SCRIPT>
     
    <? 
    if ($_SESSION['nom_session']<>"" && $_SESSION['privilege_session'] == "admin"){ // vérification sur la session authentification (la session est elle enregistrée ?)
    // ici les éventuelles actions en cas de réussite de la connexion
    include("admin/bannerAdmin.php");
    }
    else {
    include("banner.php");
    }
     
     
    ?>
     
        <tr>
        <td height="33" background="images/menuH_Bg.gif">&nbsp;</td>
        <td height="33" background="images/menuH_Bg.gif">
       </td>
        <td height="33" background="images/menuH_Bg.gif">&nbsp;</td>
      </tr>
     
      <tr>
        <td height="31" background="images/fade.gif">&nbsp;</td>
        <td height="31" background="images/fade.gif">&nbsp;</td>
        <td height="31" background="images/fade.gif">&nbsp;</td>
      </tr>
      <tr>
        <td>&nbsp;</td>
        <td valign="top"><table width="1000" border="0" align="center" cellpadding="0" cellspacing="0">
          <tr>
          	<?
     
          	 if($_SESSION['privilege_session'] == "admin") { 
     				 require_once('menuAdmin.php'); 
     				 }
     				 if($_SESSION['privilege_session'] == "user") {
     				 require_once('menu.php'); 
     				}
     				 ?>
     				 <td width="34">&nbsp;</td>
            <td width="750" valign="top" align="center" class="texte">
     
              <?php 
     
      // si l'utilisateur est connecté comme admin ...
      if($_SESSION['privilege_session'] == "admin") { // Affichage conditionnel : si et seulement si l'utilisateur est connecté avec le privilege administrateur ?>
     <?php require_once('menuAdmin.php'); ?>
     
      <strong>Vous êtes connecté en tant qu'administrateur</strong>
      <br>  <br>
    			  <table width="100%" align="center" text="justify">
     
    			<tr><td><p align="justify" class="texte">En tant qu'<em><strong>administrateur</strong></em> vous avez accès à des fonctions avancées : gestion des utilisateurs, des entreprises et de la taxinomie des composants. Vous avez également la responsabilité de valider  certaines données saisies  par les utilisateurs. Cette fonction "validation" est primordiale lorsqu'un utilisateur propose de modifier la taxinomie des composants. Elle garantit une efficacité durable de PRESTEO.<br><br></td></tr>
    			 </p>
    			</table>
     
    <p align="left">
    <A href="#" onMouseOver="AffBulle('<b>«Flux»</b><br> correspond aux flux de matière ou d\'énergie qui entrent et sortent réellement sous une forme particulière des procédés d\'une entreprise. <br>Exemple  : «Boues d\'hydroxyde de cuivre». <br>Un flux est souvent constitué de plusieurs «composants». <br>Exemple  : «Boues d\'hydroxydes de cuivre» est composé de «cuivre». La désignation du flux est à choisir prioritairement dans la liste jointe.')" onMouseOut="HideBulle()">Définition d'un Flux</A>
    <br>
    <A href="#" onMouseOver="AffBulle('<b>«Composant»</b><br> correspond aux éléments de base qui constituent un flux : corps métalliques, molécules organiques, macromolécules... <br>Exemple : Un flux «Solvant Référence XYZ» composé d\'«isopropanol», de «méthanol» et de «trichoroéthylène». <br>La désignation du composant est à choisir obligatoirement dans la taxinomie jointe. <br>Un nouveau type de composant peut toutefois etre proposé à l\'administrateur.')" onMouseOut="HideBulle()">Définition d'un Composant</A>
    </p>
     
     
    <?php 
     
    $query1 = "select * from ref_contact ";
    $query1 .= "WHERE traite='0' ORDER BY id DESC ;"; 
    $result1 = mysql_query($query1);
    $nbres1 = mysql_num_rows($result1);
    ?>
     
    	<?php 
     
    $query2 = "select * from ref_composant ";
    $query2 .= "WHERE etat_validation ='1' ORDER BY id DESC ;"; 
    $result2 = mysql_query($query2);
    $nbres2 = mysql_num_rows($result2);
    ?>
     
    	<?php 
     
    $query3 = "select * from ref_flux ";
    $query3 .= "WHERE etat_validation ='1' ORDER BY id DESC ;"; 
    $result3 = mysql_query($query3);
    $nbres3 = mysql_num_rows($result3);
    ?>
    	<?php 
     
    $query4 = "select * from ref_passperdu ";
    $query4 .= "WHERE traite ='0' ORDER BY id DESC ;"; 
    $result4 = mysql_query($query4);
    $nbres4 = mysql_num_rows($result4);
    ?>
    <p align="left">
    <br><br>
    <? 
    $nbresmess = $nbres1 + $nbres4;
    if($nbres1 != 0 || $nbres4 !=0) echo("<p align='left' class='annonce4'><img src='images/b_lum.gif' border='0'> Vous avez ".$nbresmess." nouveau(x) message(s)</p>");
    ?>
    <? 
    if($nbres2 !=0 || $nbres3 !=0) echo("<p align='left' class='annonce5'><img src='images/b_lum.gif' border='0'> Il vous reste des éléments à valider. Veuillez consulter la page \"Vérifications\"</p>");
    ?>
     
    </p>
     
     
      <?php } // fin de l'affichage conditionnel?>
     
      <?php 
      // si l'utilisateur est connecté comme simple utilisateur ...
      if($_SESSION['privilege_session'] == "user") { // Affichage conditionnel : si et seulement si l'utilisateur est connect&eacute; avec le privilege utilisateur simple ?>
      <?php require_once('menu.php'); ?>
      <strong>Vous êtes connecté en tant qu'utilisateur</strong>
      <br>  <br>
    <table width="100%" align="center" text="justify">
     <tr><td><p align="justify" class="texte">En tant qu'<strong><em>utilisateur</em></strong> vous pouvez consulter et modifier les informations relatives à votre entreprise. Vous pouvez également créer et enrichir par la suite son Bilan Entrées/Sorties  en ajoutant des flux et des composants. La manière de décrire et de saisir les flux et les composants correspond à la méthodologie à laquelle vous avez été formés.  Vous pouvez a tout moment effectuer une recherche de synergies ou rechercher des entreprises ayant  à gérer les mêmes flux que la votre.  Ces résultats peuvent être exportés sur un format Excel afin de faciliter leur exploitation.<br><br></p></td></tr>
    </p>
    </table>
    <p align="left">
    <A href="#" onMouseOver="AffBulle('<b>«Flux»</b><br> correspond aux flux de matière ou d\'énergie qui entrent et sortent réellement sous une forme particulière des procédés d\'une entreprise. <br>Exemple  : «Boues d\'hydroxyde de cuivre». <br>Un flux est souvent constitué de plusieurs «composants». <br>Exemple  : «Boues d\'hydroxydes de cuivre» est composé de «cuivre». La désignation du flux est à choisir prioritairement dans la liste jointe.')" onMouseOut="HideBulle()">Définition d'un Flux</A>
    <br>
    <A href="#" onMouseOver="AffBulle('<b>«Composant»</b><br> correspond aux éléments de base qui constituent un flux : corps métalliques, molécules organiques, macromolécules... <br>Exemple : Un flux «Solvant Référence XYZ» composé d\'«isopropanol», de «méthanol» et de «trichoroéthylène». <br>La désignation du composant est à choisir obligatoirement dans la taxinomie jointe. <br>Un nouveau type de composant peut toutefois etre proposé à l\'administrateur.')" onMouseOut="HideBulle()">Définition d'un Composant</A>
     
     
    <?php 
     
    $iduser = $_SESSION['id_user_session'];
    $ident = $_SESSION['id_ent_session'];
     
    $query1 = "select * from ref_compo_refus ";
    $query1 .= "WHERE traite='0' and id_user=$iduser;"; 
    $result1 = mysql_query($query1);
    $nbres1 = mysql_num_rows($result1);
    ?>
     
    	<?php 
     
    $query2 = "select * from ref_flux_refus ";
    $query2 .= "WHERE traite='0' and id_user=$iduser;"; 
    $result2 = mysql_query($query2);
    $nbres2 = mysql_num_rows($result2);
    ?>
     
    	<?php 
     
    $query3 = "select * from usr_mess_ent ";
    $query3 .= "WHERE id_ent='$ident' and traite='0';"; 
    $result3 = mysql_query($query3);
    $nbres3 = mysql_num_rows($result3);
    ?>
    <br><br>
    <? 
    if($nbres3 != 0) echo("<p align='left' class='annonce4'><img src='images/b_lum.gif' border='0'> Vous avez ".$nbres3." nouveau(x) message(s)</p>");
     
    if($nbres1 != 0 || $nbres2 !=0) echo("<p align='left' class='annonce5'><img src='images/b_lum.gif' border='0'> Certaines de vos créations/modifications ont été refusées par l'administrateur.Veuillez consulter la page \"Vérifier les refus \" accessible depuis votre messagerie.</p>");
    ?>
     
     
     
      <?php } // fin de l'affichage conditionnel?>
     
     
     
     
            </td>
            </tr>
        </table></td>
        <td>&nbsp;</td>
      </tr>
     <? 
     include("footer.php");
     ?>
    </table>
    </body>
    </html>
    et le fichier de connexion à la base mysql est connexion.php
    je me connecte d'abord en root et sans mot de passe.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    <?
     
    // fichier de connexion de l'application phoning
     
    $hostname_dbprotect = "localhost";
    $username_dbprotect = "root";
    $password_dbprotect = "";
    $database_dbprotect = "base_presteo";
     
    mysql_connect($hostname_dbprotect,$username_dbprotect,$password_dbprotect) or die("Impossible de se connecter a la base");
    mysql_select_db($database_dbprotect) or die("erreur de connexions a la base de donnees");
     
     
    ?>
    voilà.si ya encore besoin d'autre chose pour vous clarifier la situation, je suis à votre disposition.
    merci d'avance

  6. #6
    Membre averti
    Inscrit en
    Avril 2006
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 55
    Par défaut
    voici l'erreur que produit le fichier index.php
    Echec d'autthentification!!! login ou mot de pass incorrect
    echec d'authentification!!! aucune session n'est ouverte ou n'avez pas les droits pour afficher cette page

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    179
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mai 2006
    Messages : 179
    Par défaut
    salut a première vue dans les require, peux tu mettre session.php en premier avant la connexion à la base?
    ensuite la fonction de redirection header doit être en première ligne car elle fonctionne comme session_start, rien ne doit être avant header(). donc il faudrait modifier la vérif de mot de passe pour placer header en premier. Ce qui ne semble pas possible ici puisque tu as déjà un session start. Dans ce cas il faut séparer le fichier en deux parties.

  8. #8
    Membre averti
    Inscrit en
    Avril 2006
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 55
    Par défaut
    je resume la situation .A votre avis tout viendrait du fichier accueil.php?
    vous dites
    Citation Envoyé par yvonh
    dans les require, peux tu mettre seesion.php en premier avant la connexion à la base?.
    je me pose une question: les logins et pass sont dans une table de la base de données, par conséquent n'est -il pas indispensable de se connecter à la base pour récupérer les login avant de démarrer une session?
    Citation Envoyé par yvonh
    ensuite la fonction de redirection header doit être en première ligne car elle fonctionne comme session_start, rien ne doit être avant header(). .
    c'est à dire il faut que je mette header() au tout debut du script avant même connexion.php? dans le fichier index.php?.
    Citation Envoyé par yvonh
    donc modifie la vérif de mot de passe pour placer header en premier.
    j'ai pa très bien compris cette dernière partie.

  9. #9
    Membre expérimenté

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Par défaut
    Le problème est vraisemblablement lié au compte dans la base de données : il ne semble en trouver aucun qui correspond à ce que vous fournissez.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $utilisateur = mysql_num_rows($verif);
     
    if ($utilisateur) {
    Il ne semble pas passer dans le if ...

    Par ailleurs :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $verif_query=sprintf("SELECT * FROM ref_utilisateur WHERE login='$login' AND pass='$pass'");
    sprintf est totalement inutile ici, et les données POST ne sont pas protégées (fonction mysql_real_escape_string)

  10. #10
    Membre averti
    Inscrit en
    Avril 2006
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 55
    Par défaut
    merci,
    je vois ce que vous voulez dire.mais c'est quand même bizzare car il y a aumoins 3 comptes crées dans la table ref_utilateurs avec les attributs des champs login et pass etc... tous les champs sont renseignés pourtant
    je ne sais pas pourquoi il ne voit pas le if($utilisateur){}
    Pensez-vous donc que je dois remplacer le sprintf () par la fonction que vous m'avez indiqué?

  11. #11
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    179
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mai 2006
    Messages : 179
    Par défaut
    je me pose une question: les logins et pass sont dans une table de la base de données, par conséquent n'est -il pas indispensable de se connecter à la base pour récupérer les login avant de démarrer une session?
    si il faut verifier dans la BDD pour authentifier et tu ouvres la session si le login et pass sont corrects. dans ton prog tu dois faire la vérif et ensuite ouvrir une session, il faudrait 2 fichiers séparés.

  12. #12
    Membre expérimenté

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Par défaut
    Ceci par exemple serait plus cohérent :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $verif_query = sprintf("SELECT * FROM ref_utilisateur WHERE login='%s' AND pass='%s'", mysql_real_escape($login), $pass);
    Il y a deux choses qui me "chagrinent" :
    • si $utilisateur vaut 0, théoriquement mysql_fetch_assoc doit alors vous renvoyer une erreur
    • dans accueil.php on ne voit aucun appel à session_start (j'ai peut être mal lu, le code étant assez long, à moins qu'il ne soit fait dans un des fichiers inclus)


    Configurez votre environnement pour que error_reporting soit à E_ALL (c'est une bonne habitude à prendre pour le développement) si ce n'est pas déjà fait. Affichez et testez la requête dans phpMyAdmin par exemple, il vous suffit pour cela d'ajouter cette ligne avant mysql_query :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    printf("SELECT * FROM ref_utilisateur WHERE login='%s' AND pass='%s'", mysql_real_escape($login), $pass);
    La fonction session_register est dépréciée et je ne vois aucune variable $authentification

  13. #13
    Membre averti
    Inscrit en
    Avril 2006
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 55
    Par défaut
    j'ai testé la requête
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    select * from ref_utilisateur
    dans phpMyadmin et ça retourne mes enrégistrements.
    j'ai remplacé également mon code $verif_query par celui que vous m'avez envoyé
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $verif_query = sprintf("SELECT * FROM ref_utilisateur WHERE login='%s' AND pass='%s'", mysql_real_escape($login), $pass);
    . j'ai aussi mis la requête
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     print("SELECT * FROM ref_utilisateur WHERE login='%s' AND pass='%s'", mysql_real_escape($login), $pass);
    avant mysql_query.
    j'ai activé aussi E_ALL
    mais tout ceci ne change rien à mon problème.
    effectivement y avait pas session_start() dans mon accueil.php . je l'ai rajouté.

    effectivement je n'ai pas non plus retrouvé la varaibel "authentification". comme je l'ai expliqué au début c'est pas à moi ce code, je dois développer la partie cartographique du site.depuis deux jours j'essaie de démarrer le site.

  14. #14
    Membre éclairé
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    244
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 244
    Par défaut Ou tu en es
    Bonjour à tous,

    je voulais savoir où tu en es dans ton problème ?

    A+

Discussions similaires

  1. [Débutant] Authentification Site Web
    Par kestar dans le forum VB.NET
    Réponses: 1
    Dernier message: 16/02/2012, 10h56
  2. Authentification site web
    Par litil dans le forum Android
    Réponses: 6
    Dernier message: 04/08/2011, 23h23
  3. Authentification site web
    Par memotech dans le forum Général Dotnet
    Réponses: 1
    Dernier message: 03/05/2009, 10h51
  4. [MySQL] authentification dans un site web dynamique
    Par inessahal dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 08/05/2008, 12h12
  5. Réponses: 2
    Dernier message: 03/06/2007, 10h58

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo