Prob avec la fonction header
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:
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:
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:
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:
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?