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
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>
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
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;
 
}
QQ1 peut-il m'aider svp?