Impossible de se connecter espace membre

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Impossible de se connecter espace membre

[RESOLU] Re: Impossible de se connecter espace membre

par DEVILLERS » 14 oct. 2012, 15:43

=D> Trop Fort
Merci pour ces explications. Je ne pensais y arriver.
Jean-Charles

Re: Impossible de se connecter espace membre

par moogli » 14 oct. 2012, 14:54

ajout un var_dump($rows) avant le return dans la fonction verifier_combinaison_pseudo_password() tu pourras voir ce que retourne le mysql_num_rows.

au pif je dirais false, qui avec le ==, va être équivalent à zéro ;)


tu devrais utiliser mysql pour compter ne nombre d'utilisateur avec le pseudo / password fournit, ou alors utiliser les infos que tu demande pour faire la comparaison :)

par exemple SELECT count(*) as nb FROM utilisateurs
WHERE pseudo='$pseudo'AND password='$password'

tu récupère nb si == 1 ok sinon KO


@+

Re: Impossible de se connecter espace membre

par DEILLERS » 14 oct. 2012, 10:37

Il m'affiche le message pseudo ou password incorrect lorsque j'essaye de me connecter à l'espace membre.

fichier login.func.php
<?php

//la function qui va véfier la combinaison pseudo/password

function verifier_combinaison_pseudo_password($pseudo,$password)
{
   $pseudo = mysql_real_escape_string(htmlentities($_POST['pseudo']));
   $password = mysql_real_escape_string(htmlentities($_POST['password']));
   $password = sha1(password);

   $query = mysql_query("SELECT pseudo,password FROM utilisateurs
   WHERE pseudo='$pseudo'AND password='$password'");
   
   $rows = mysql_num_rows($query);
   
   return $rows;
   
}
?>

Re: Impossible de se connecter espace membre

par moogli » 14 oct. 2012, 10:32

Salut

Quel est le message d'erreur ?

Elle est faite comment cette fonction verifier_combinaison_pseudo_password() ?


@+

Impossible de se connecter espace membre

par DEVILLERS » 14 oct. 2012, 10:25

Bonjour je suis en train de créer un espace membre cependant je n'arrive pas à me connecter: http://www.testdrupal.fr; voici mes fichiers .php. Merci par avance de me dire ce qui cloche.

connect.php
<?php
session_start();
//connexion base de donnée
mysql_connect('mysql5-13.perso','testdrupal','q5mc44t') or die ('error');
mysql_select_db('testdrupal') or die('Base de donnꥠintrouvable');
mysql_query('SET NAMES utf8');
?>
login.php
<h1>Connexion</h1>
<?php
   if(isset($_POST['submit']))
   {
     if(empty($_POST['pseudo']))
	 {
	   $errors[]="Veuillez saisir votre pseudo";
	 }
	 if(empty($_POST['password']))
	 {
	   $errors[]="Veuillez saisir votre password";
	 }
	 
	 if(!empty($errors))
	 {
	   foreach($errors as $error)
	   {
	       echo"<div class='error'>".$error."</div>";
	   }
	 }
	 else
	 {
	     if(verifier_combinaison_pseudo_password($_POST['pseudo'],$_POST['password'])==0)
		 {
		    echo"<div class='error'>Pseudo ou password incorrect</div>";
		 }
		 else
		 {$_SESSION['pseudo'] = $_POST['pseudo'];
		  header("Location:index.php?page=membre");
		 }
	 }
   }
?>

<form method="POST" action= "">
  <label for="pseudo">Votre pseudo :</label>
  <input type="text" name="pseudo"><br />
  <label for="password">Votre password :</label>
  <input type="password" name="password"><br /><br />
  <input type= "submit" value="Se connecter"name="submit">
  
  </form><br /><br />
  
  <a href='index.php?page=register'>Pas encore membre</a>
membre.php
<div class='header'>
<?php
$infos = infos_membre_connecte();

foreach($infos as $info)
{
   echo "Bienvenue ".$info['pseudo'];
}

?>
</div>
membre.func.php
<?php

//la function qui va rꤵperer les infos de l'utilisateur connect鍊
function infos_membre_connecte()
{
$infos=array();
$pseudo = $_SESSION['pseudo'];
$query = mysql_query("SELECT * FROM utilisateurs WHERE pseudo='$pseudo'");

while($row = mysql_fetch_assoc($query))
{
  $infos[] = $row;
}
  return $infos;
}


?>