Bonjour à tous,
j'ai besoin svp , que vous m'aidiez à resoudre un probleme auquel je suis confronté.
j'ai téléchargé un script permettant de créer un espace membre en me basant sur un tuto du même auteur.
l'organisation de ce script est le suivant :
creer un BD comprenant une table
- un fichier dbconfig
- fichier index
- un fichier class.user
- un fichier home
j'ai reproduit à l'identique et suivi à la lettre toutes les instruction du tuto , mais malheureusement pour moi,
j'arrive pas à depasser l'étape du login. c'est à dire à me connecter et à afficher la page accueil du membre.
je vous envoie les différents scripts que j'ai utilisé
- création de la BD
Code sql : 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 CREATE TABLE representation ( user_id int(3) NOT NULL AUTO_INCREMENT, rep_ChefMission varchar(50) NOT NULL, rep_Pays varchar(50) NOT NULL, rep_Etat varchar(50) NOT NULL, rep_Ville varchar(50) NOT NULL, rep_District varchar(50), rep_Quartier varchar(50), rep_Adresse varchar(50) NOT NULL, rep_Tel int(12) NOT NULL, rep_Fax int(12), rep_Email varchar(25), user_name varchar(25) NOT NULL, user_password varchar(25) NOT NULL, rep_Latitude int(12), rep_Longitude int(12), rep_Photo int(12), PRIMARY KEY (`user_id`) )
Fichier dbconfig
fichier class.user
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 <?php class Database { private $host = "localhost"; private $db_name = "dblogin"; private $username = "root"; private $password = ""; public $conn; public function dbConnection() { $this->conn = null; try { $this->conn = new PDO("mysql:host=" . $this->host . ";dbname=" . $this->db_name, $this->username, $this->password); $this->conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); } catch(PDOException $exception) { echo "Connection error: " . $exception->getMessage(); } return $this->conn; } } ?>
fichier index
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 <?php require_once('dbconfig.php'); class USER { private $conn; public function __construct() { $database = new Database(); $db = $database->dbConnection(); $this->conn = $db; } public function runQuery($sql) { $stmt = $this->conn->prepare($sql); return $stmt; }k public function register($uname,$umail,$upass) { try { $new_password = password_hash($upass, PASSWORD_DEFAULT); $stmt = $this->conn->prepare("INSERT INTO users(user_name,user_email,user_pass) VALUES(:uname, :umail, :upass)"); $stmt->bindparam(":uname", $uname); $stmt->bindparam(":umail", $umail); $stmt->bindparam(":upass", $new_password); $stmt->execute(); return $stmt; } catch(PDOException $e) { echo $e->getMessage(); } } public function doLogin($uname,$umail,$upass) { try { $stmt = $this->conn->prepare("SELECT user_id, user_name, user_email, user_pass FROM users WHERE user_name=:uname OR user_email=:umail "); $stmt->execute(array(':uname'=>$uname, ':umail'=>$umail)); $userRow=$stmt->fetch(PDO::FETCH_ASSOC); if($stmt->rowCount() == 1) { if(password_verify($upass, $userRow['user_pass'])) { $_SESSION['user_session'] = $userRow['user_id']; return true; } else { return false; } } } catch(PDOException $e) { echo $e->getMessage(); } } public function is_loggedin() { if(isset($_SESSION['user_session'])) { return true; } } public function redirect($url) { header("Location: $url"); } public function doLogout() { session_destroy(); unset($_SESSION['user_session']); return true; } } ?>
fichier home
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 Index <?php session_start(); require_once("class.user.php"); $login = new USER(); if($login->is_loggedin()!="") { $login->redirect('home.php'); } if(isset($_POST['btn-login'])) { $uname = strip_tags($_POST['txt_uname_email']); $umail = strip_tags($_POST['txt_uname_email']); $upass = strip_tags($_POST['txt_password']); if($login->doLogin($uname,$umail,$upass)) { $login->redirect('home.php'); } else { $error = "Wrong Details !"; } } ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Coding Cage : Login</title> <link href="bootstrap/css/bootstrap.min.css" rel="stylesheet" media="screen"> <link href="bootstrap/css/bootstrap-theme.min.css" rel="stylesheet" media="screen"> <link rel="stylesheet" href="style.css" type="text/css" /> </head> <body> <div class="signin-form"> <div class="container"> <form class="form-signin" method="post" id="login-form"> <h2 class="form-signin-heading">Log In to WebApp.</h2><hr /> <div id="error"> <?php if(isset($error)) { ?> <div class="alert alert-danger"> <i class="glyphicon glyphicon-warning-sign"></i> <?php echo $error; ?> ! </div> <?php } ?> </div> <div class="form-group"> <input type="text" class="form-control" name="txt_uname_email" placeholder="Username or E mail ID" required /> <span id="check-e"></span> </div> <div class="form-group"> <input type="password" class="form-control" name="txt_password" placeholder="Your Password" /> </div> <hr /> <div class="form-group"> <button type="submit" name="btn-login" class="btn btn-default"> <i class="glyphicon glyphicon-log-in"></i> SIGN IN </button> </div> <br /> <label>Don't have account yet ! <a href="sign-up.php">Sign Up</a></label> </form> </div> </div> </body> </html>
voici donc les codes dont je me suis servi pour essayer de créer mon espace membre. mais je bute sur un probleme, le fait qu'apres avoir créé la passe ide,tification, je n'arrive pas à aller sur la page home.
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 <?php include_once 'dbconfig.php'; if(!$user->is_loggedin()) { $user->redirect('index.php'); } $user_id = $_SESSION['user_session']; $stmt = $DB_con->prepare("SELECT * FROM users WHERE user_id=:user_id"); $stmt->execute(array(":user_id"=>$user_id)); $userRow=$stmt->fetch(PDO::FETCH_ASSOC); ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <link rel="stylesheet" href="bootstrap/css/bootstrap.min.css" type="text/css" /> <link rel="stylesheet" href="style.css" type="text/css" /> <title>welcome - <?php print($userRow['user_email']); ?></title> </head>
merci pour tout
Partager