Cookie espace membre - redirection
Bonjour,
J'ai un portail avec une page principale : index.php qui affiche le formulaire de connexion et d'inscription.
J'ai une page membre : home.php qui affiche le profil du membre.
Voici mon problème :
Je souhaiterais que lorsqu'on se connecte, on est redirigé normalement sur home.php mais que par un cookie on soit redirigé vers la page membre si on se rend sur la page index.php.
Je souhaiterais le même exemple que Facebook
Comment on créer ce cookie ?
Comment on l'intègre dans mon code source des pages php ?
Voici mon site : http://www.web-astronomie.com
Page de connexion :
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
| <?
session_start(); // Pour la suite
require ("conf.php3"); //Comme d'ab
$pseudo = $_POST['pseudo']; //On recupère le pseudo et le pass
$pass = $_POST['password'];
if (!empty($pseudo) && !empty($pass)) //S'ils sont pas vident
{
$sql = connect_sql(); //On se connecte à MySQL
$reponse = mysql_query ("SELECT * FROM pdf_membre WHERE pseudo='$pseudo'"); //On recupère les infos à partir du pseudo
$donnees = mysql_fetch_array ($reponse);
$verif = $donnees['pass'];
$id = $donnees['id'];
$nom = $donnees['nom'];
$prenom = $donnees['prenom'];
$pseudo_sql = $donnees['pseudo'];
$confirm = $donnees['confirm'];
if($pass != $verif) //On verifie que le pass entré est égale à celui de la BDD, si le passe est différent
{
echo "<script>alert(\"Votre identifiant ou votre mot de passe est incorrect !\")</script>";
echo '<script language="Javascript">document.location.replace("javascript:history.back(1)");</script>';
}
elseif(!empty($confirm)) //Si le compte n'est pas activé
{
echo "<script>alert(\"Votre compte n\'est toujours pas activé, vérifiez votre boite email !\")</script>";
echo '<script language="Javascript">document.location.replace("javascript:history.back(1)");</script>';
}
else //Sinon tout est bon
{
$_SESSION['pseudo'] = $pseudo_sql ; //On créé une variable session avec le pseudo
header('Location: home.php?' . $prenom . '.' . $nom . '.' . $pseudo . ''); //On redirige vers la page d'accueil
}
mysql_close($sql); //On ferme la connection
}
?> |
Page d'inscription :
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
| <?php
session_start(); //On demarre une session
require("conf.php3"); //On insert le fichier qui contient les informations
$mail = htmlentities($_POST['mail']);
if (preg_match("!^[a-z0-9._-]+@[a-z0-9._-]{2,}\.[a-z]{2,4}$!", $mail)) //Verifie que l'email entrée n'est pas une fausse.
{
$chaine = "abcdefghijklmnopqrstuvwxyz0123456789";
$confirm = str_shuffle($chaine); //On créé le code de confirmation
$pseudo = htmlentities($_POST['pseudo']); //On recupère les infos
$mdp = htmlentities($_POST['mdp']);
$verif_mdp = htmlentities($_POST['verif_mdp']);
$nom = htmlentities($_POST['nom']);
$prenom = htmlentities($_POST['prenom']);
$pays = htmlentities($_POST['pays']);
$website = htmlentities($_POST['website']);
$born = htmlentities($_POST['born']);
$sexe = htmlentities($_POST['sexe']);
/*On Fait la variable contenant le mail de confirmation*/
$message1 = '<html><body><img src="http://www.web-astronomie.com/images/entete-mail.png"></br><br>';
$message1 .= '<font face="Tahoma" color="#3b5998" size="2">Bonjour<b> ' . $prenom . ' ' . $nom . ' </b>et bienvenue sur<b> ' .$nom_site. '</b></br>';
$message1 .= 'Toute l\'équipe de Web Astronomie vous remercie de votre inscription.<br><br>';
$message1 .= 'Vos identifiants (conserver les précieusement) : <br>';
$message1 .= '</br>';
$message1 .= 'Votre pseudo : <b>' . $pseudo .'</b><br>';
$message1 .= 'Votre mot de passe : <b>' . $mdp .'</b><br>';
$message1 .= '</br>';
$message1 .= 'Votre profil : </br>';
$message1 .= '</br>';
$message1 .= 'Votre mail : <b>' . $mail .'</b></br>';
$message1 .= 'Votre nom : <b>' . $nom .'</b><br>';
$message1 .= 'Votre prenom : <b>' . $prenom .'</b><br>';
$message1 .= 'Votre pays : <b>' . $pays .'</b><br>';
$message1 .= 'Votre date de naissance : <b>' . $born .'</b><br><br>';
$message1 .= 'Pour modifier vos infos, rendez-vous dans votre compte<br>';
$message1 .= '</br>';
$message1 .= 'Cliquez sur le lien ci-dessous pour activer votre compte :</br>';
$message1 .= '</br>';
$message1 .= '<a href="http://www.web-astronomie.com/confirm.php?login=' . str_replace(' ','%20',$pseudo) . '&confirm=' . $confirm . '">';
$message1 .= 'Cliquez ici pour activer</a>';
$message1 .= '</br></br>';
$message1 .= 'Nous vous remercions de votre fidélité<br>';
$message1 .= 'L\'équipe de <b>Web Astronomie</b></font></body></html>';
$sql = connect_sql(); //On se connecte à MySQL
$verification = mysql_query("SELECT COUNT(*) FROM pdf_membre WHERE pseudo='$pseudo' OR mail='$mail'") or die (mysql_error());
$donnees = mysql_fetch_array($verification)or die (mysql_error());
if($donnees['COUNT(*)'] >= 1) //On verifie que le pseudo n'existe pas déjà
{
echo "<script>alert(\"Votre pseudo ou votre adresse email est déjà pris(e) !\")</script>";
echo '<script language="Javascript">document.location.replace("javascript:history.back(1)");</script>';
}
else
{
if( empty($pseudo) || empty($mdp) || empty($verif_mdp) || empty($mail) || empty($nom) || empty($prenom) || empty($born) || empty($sexe)) //On verifie que les variables précédentes ne soient pas vide
{
echo "<script>alert(\"Un ou plusieurs champs ne sont pas remplis !\")</script>";
echo '<script language="Javascript">document.location.replace("javascript:history.back(1)");</script>';
}
elseif( $mdp != $verif_mdp) //On verifie que les 2 pass sont identiques
{
echo "<script>alert(\"Le deux mots de passe ne sont pas identiques !\")</script>";
echo '<script language="Javascript">document.location.replace("javascript:history.back(1)");</script>';
}
else //Si tout est bon on entre les données dans la BDD et on envoye le mail
{
mysql_query("INSERT INTO pdf_membre VALUES ('','$pseudo', '$mdp', '$mail', '$confirm', '$nom', '$prenom', '$pays', '$born', '$website', '$sexe')");
echo "<script>alert(\"Félicitation, vous êtes maintenant inscrit sur Web Astronomie ! Vous allez recevoir un email pour activer votre compte\")</script>";
echo '<script language="Javascript">document.location.replace("index.php");</script>';
$entete = "MIME-Version: 1.0\r\n";
$entete .= "Content-type: text/html; charset=iso-8859-1\r\n";
$entete .= "From: Web Astronomie <$email_admin>\r\n";
$entete .= "Reply-To: $email_admin\r\n";
mail($mail,'Bienvenue sur ' .$nom_site. ' ' . $login .'' , $message1, $entete);
}
}
mysql_close($sql); //On se deconnecte
}
else //Reponse si l'adresse e-mail est une fausse
{
echo "<script>alert(\"Votre adresse email n\'est pas correcte !\")</script>";
echo '<script language="Javascript">document.location.replace("javascript:history.back(1)");</script>';
}
?> |