Problème include , redirection
bonjour ,
Donc j'ai créer un script de connexion et d'inscription et une page membre .
Seulement je n'arrive pas a gérer les redirections .
j'aimerais que une fois identifier à la base de donnée le formulaire de connexion face place a la page membre.php ( dans la page index ) . j'ai chercher pas mal de tutoriel sur le net mais rien ne marche :s . Je requiert donc votre aide pour me dire quoi faire :s
page index.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 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
| <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<title>Carnage Prod</title>
<meta http-equiv="Content-Language" content="fr" />
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link type="text/css" rel="stylesheet" media="screen" href="style.css" />
</head>
<body>
<div id="site">
<div id="header"></div>
<div id="sous-header">
<div id="mh">
<a title="Lien" href="#">Rubrique</a>
<a title="Lien" href="#">Rubrique</a>
<a title="Lien" href="#">Rubrique</a>
<a title="Lien" href="#">Rubrique</a>
</div>
</div>
<div id="corp">
<div id="left">
<div id="contenu-left">
<div id="title">Espace Membre</div>
<div id="contenu-menu">
<?php
if (isset($_GET["page"])) $page = $_GET["page"];
else $page = 0;
switch ($page) {
case 3 : include("membre.php"); break;
default : include("connexion.php"); break;
}
?>
</div>
<div id="title">Menu</div>
<div id="menu">
<a href="?page=2" title="">Accueil</a><br /><br />
<a href="membre.inc.php?page3" title="">membre test</a><br /><br />
<a href="#" title="">pouet pouet</a><br /><br />
<a href="#" title="Nous contacter">Nous contacter</a>
</div>
<br />
<br />
<div id="contenu-menu">
</div>
</div>
</div>
<div id="right">
<div id="contenu-right">
<div id="arbo">
<i><marquee>Mettre un texte déroulant ici</marquee></i>
</div>
<?php
if (isset($_GET["page"])) $page = $_GET["page"];
else $page = 0;
switch ($page) {
case 1 : include("inscription.php"); break;
default : include("accueil.php"); break;
}
?>
</div>
</div>
</div>
</div>
<span class="spacer">-</span>
<div id="footer">
<p>Copyright 2008 C@rn@ge Prod - Toute reproduction est scrictement interdite et constitut un délit </p>
</div>
</body>
</html> |
page connexion.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 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61
| <?php
// on teste si le visiteur a soumis le formulaire de connexion
if (isset($_POST['connexion']) && $_POST['connexion'] == 'Connexion') {
if ((isset($_POST['pseudo_membre']) && !empty($_POST['pseudo_membre'])) && (isset($_POST['password_membre']) && !empty($_POST['password_membre']))) {
$base = mysql_connect ('localhost', 'root', '');
mysql_select_db ('soiree', $base);
// on teste si une entrée de la base contient ce couple login / pass
$sql = 'SELECT count(*) FROM membre WHERE pseudo_membre="'.mysql_escape_string($_POST['pseudo_membre']).'" AND password_membre="'.md5(mysql_escape_string($_POST['password_membre'])).'"';
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
$data = mysql_fetch_array($req);
mysql_free_result($req);
mysql_close();
// si on obtient une réponse, alors l'utilisateur est un membre
if ($data[0] == 1) {
session_start();
$_SESSION['pseudo_membre'] = $_POST['pseudo_membre'];
header('location = index.php?page=3');
exit();
}
// si on ne trouve aucune réponse, le visiteur s'est trompé soit dans son login, soit dans son mot de passe
elseif ($data[0] == 0) {
$erreur = 'Compte non reconnu.';
}
// sinon, alors la, il y a un gros problème :)
else {
$erreur = 'Probème dans la base de données : plusieurs membres ont les mêmes identifiants de connexion.';
}
}
else {
$erreur = 'Au moins un des champs est vide.';
}
}
?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Accueil</title>
</head>
<body>
Connexion à l'espace membre :<br />
<form action="index.php" method="post">
Pseudo : <br><input type="text" name="pseudo_membre" value="<?php if (isset($_POST['pseudo_membre'])) echo htmlentities(trim($_POST['pseudo_membre'])); ?>"><br />
password : <br><input type="password" name="password_membre" value="<?php if (isset($_POST['password_membre'])) echo htmlentities(trim($_POST['password_membre'])); ?>"><br />
<input type="submit" name="connexion" value="Connexion">
</form>
<center>
<a href="?page=1">Vous inscrire</a>
</center>
<?php
if (isset($erreur)) echo '<br /><br />',$erreur;
?>
</body>
</html> |
ma page inscription.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 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 95 96 97 98 99 100 101 102 103 104
| <html>
<head>
<title>Inscription : </title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body>
<?php
$sql_server = 'localhost';
$db='soiree';
$user='root';
$password='';
mysql_connect($sql_server, $user, $password) or die(mysql_error());
mysql_select_db($db) or die(mysql_error());
$html = formulaire_inscription();
echo "<div id='formul'>".$html['formulaire_inscription']."</div><br />";
function formulaire_inscription($num_salarie = 0)
{
if($_SERVER['REQUEST_METHOD'] == "POST")
{
//Si le bouton "S'inscrire" à été validé
if(isset($_POST['valid']))
{
$sql = 'SELECT count(*) FROM membre WHERE pseudo_membre="'.$_POST['pseudo_membre'].'"';
$curseur = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
$result = mysql_fetch_array($curseur);
//Si le pseudo est renseigné et qu'il n'existe pas
if(isset($_POST['pseudo_membre']) && $result[0]==0)
{
//Si le pseudo contient plus de 2 caractères
if (strlen($_POST['pseudo_membre'])>2)
{
//Si le mot de passe est renseigné et qu'il est similaire à la vérification
if(isset($_POST['password_membre']) && $_POST['password_membre'] == $_POST['password_verif'])
{
$sql = 'SELECT count(*) FROM membre WHERE email_membre="'.$_POST['email_membre'].'"';
$curseur = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
$result = mysql_fetch_array($curseur);
//Si l'email n'existe pas deja
if($result[0]==0)
{
//Si l'email est renseigné et qu'il correspond à la vérification
if(isset($_POST['email_membre']) && $_POST['email_membre'] == $_POST['email_verif'])
{
//Si l'email comporte au moin 6 caractères
if(strlen($_POST['email_membre']) > 5)
{
mysql_query("INSERT INTO membre(pseudo_membre, password_membre, email_membre, date_inscription, num_cat) VALUES ('".$_POST['pseudo_membre']."', '".md5($_POST['password_membre'])."', '".$_POST['email_membre']."', '".date("Y/m/d").
"', 3);") or
die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
$msg="Membre Inscrit";
}
else
$msg="L'email doit compter au moin 6 caractères.";
}
else
$msg="Les 2 emails entrés ne correspondent pas.";
}
else
$msg="Cet email est déjà utiliser";
}
else
$msg="Les 2 mots de passes entrés ne correspondent pas.";
}
else
$msg="Le pseudo doit contenir au minimum 3 caractères.";
}
elseif($result[0]!=0)
{
$msg="Le pseudo est déjà utilisé";
}
else
$msg="Renseignez les champ comprenant une *";
}
}
$html['formulaire_inscription'] = "<form action=".$_SERVER['PHP_SELF']." method='post'>
<table>
<tr>
<th>Pseudo : </th>
<td><input type='text' name='pseudo_membre' maxlength='32'/>*</td>
</tr>
<tr>
<th>Password : </th>
<td><input type='password' name='password_membre' maxlength='32'/>*</td>
</tr>
<tr>
<th>Vérifier le password : </th>
<td><input type='password' name='password_verif' maxlength='32'/>*</td>
</tr>
<tr>
<th>Email : </th>
<td><input type='text' name='email_membre' maxlength='32'/>*</td>
</tr>
<tr>
<th>Vérifier l'email : </th>
<td><input type='text' name='email_verif' maxlength='32' />*</td>
</tr>
<tr><td><input type='submit' name='valid' value=S'inscrire /> <input type='reset' name='annuler' value='annuler'/></td></tr></table>
</form>";
return $html;
} |
et ma page membre.php
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| <?php
session_start();
if (!isset($_SESSION['pseudo_membre'])) {
header ('Location: index.php');
exit();
}
?>
<html>
<head>
<title>Espace membre</title>
</head>
<body>
Bienvenue <?php echo htmlentities(trim($_SESSION['pseudo_membre'])); ?>!<br />
<a href="deconnexion.php">Déconnexion</a>
</body>
</html> |
désolé pour la longueur du message mais je voulais vous donnez le plus de détail possible . si vous avez des question n'hésitez pas ! merci par avance