Bonsoir, je travaille actuellement en Php.Je suis encore débutant mais j'ai une question à vous poser.
Je développe un site web qui demande un code (mot de passe) pour accéder à certains de ses contenus. J'ai un formulaire (qui se trouve dans le fichier login.php) mais j'utilise ajax-jquery avec une méthode post pour envoyer le formulaire (verify.js). Si l'authentification échoue, j'affiche un msg signifiant l'authentification a échoué. Si l'authentification réussit, j'utilise la fonction header (je fais header("Location: home.php")) pour me rediriger vers la page d'accueil mais ca ne marche pas. Le contenu de cette page (home.php) est renvoyé à la page d'authentification (login.php).
Soit j'ai mal compris l'utilisation de header soit je l'ai mal combiné avec ajax.
Est ce quelqu'un peut m'aider svp?
Je mets les CS pour m'aider :
- login.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 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>Welcome</title> <meta name="keywords" content=site web, fiancialles" /> <meta name="description" content="Le site web de notre mariage" /> <link rel="stylesheet" media="screen" type="text/css" href="../css/index.css" /> <script type="text/javascript" src="../js/jquery.js"></script> <script type="text/javascript" src="../js/verify.js"></script> </head> <body> <div id="global"> <div id="langue"> <ul> <li><a href=""><img src="../img/fr.png" alt="Français" align="top">Francais</a></li> <li><a href=""> <img src="../img/gb.png" alt="English">English</a></li> <li><a href=""><img src="../img/pt.png" alt="Portugués">Portugues</a></li> </ul> </div> <div id="content"> <h1>publicStaticVoidMain</h1> <h2>30 octobre 2010</h2> <h3>Merci de vous logger pour accéder au site</h3> <form method="post" action="#"><label>Entrer votre code</label> <input type="password" id="code" name="code" maxlength="10" /> <button onclick="return verify()" type="submit">Vérifier</button> </form> <span id="error"></span> </div> </div> </body> </html>
connect.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 <?php require_once("dbconfig.php"); $code = $_POST["code"]; $lang = $_POST["lang"]; if( !isset($code) || !isset($lang)){ header( "login.php");exit(); } elseif (empty($code) || empty($lang)){ header( "login.php");exit(); } verify($code, $lang); function verify( $code , $lang = fr){ $conn = mysql_connect(HOST, USER,PASSWORD); $conn or die( "Unable to connect to database"); mysql_select_db(DBNAME) or die ("Unable to select database!"); $query = "SELECT nom,prenom,code From T_INVITES where code = '".$code."'"; $reponse = mysql_query($query) or die ("Error in query: $query. ".mysql_error()); if(count($reponse) == 1) { $user = mysql_fetch_array($reponse); if( $code == $user["code"]){ session_start(); //session_register('username'); $_SESSION["invites"] = $user["prenom"]; header("Location: ../home.php"); exit(); } else { echo "<p><span style=\"color:red\">!!Code incorrect !!</span></p>"; echo "<p>Essayez encore svp</p>"; } } } ?>
le fichier home.php
le fichier verify.js
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 <!--<?php session_start(); if( !isset($_SESSION["invites"])){ header("Location: login.php"); } ?> --><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head><title>Test</title></head> <body> <h1>Bonjour <?php echo $_SESSION["invites"];?></h1> </body> </html>
QQ1 peut-il m'aider svp?
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 function verify(){ var pass = document.getElementById("code").value; var fr = "fr"; var error = document.getElementById("error"); try { $.post("../login/connect.php" , { code : pass , lang : fr}, function (data) { //alert(data); error.innerHTML = data; }); }catch( e) { alert(e);} return false; }
Partager