10-03-2013, 03:17 PM
Bonjour alors je suis en train de coder un espace membre et j'en suis a l'inscription, seulement au niveau de la redirection il y a un problème, elle ne s'effectue pas , voici mon code :
Code :
<?php
$bdd = new PDO(mysql:host=localhost;dbname=monde, 'root', '');
// se connecte à la bdd
class Membre //création de la class membre
{
private static $_id;
private static $_pseudo;
private static $_mot_de_passe;
private static $_re_mot_de_passe;
private static $_email;
private static $_re_email;
private static $_personnage;
private static $_univers;
private static $_actif;
public static $_error = null;
protected static $bdd;
public function __construct($db,$pseudo,$mdp,$remdp,$email,$remail){
self::$bdd = $db;
self::$_pseudo = $pseudo;
self::$_mot_de_passe = $mdp;
self::$re_mot_de_passe = $remdp;
self::$_email = $email;
self::$_re_email = $remail;
if(self::pseudo()){
if(self::mdp()){
if(self::email()){
self::inscription();
}
else { echo self::$_error;}
}
else { echo self::$_error;}
}
else { echo self::$_error;}
}
static public function pseudo()
{
$pseudo = self::$_pseudo ; //signifie que la variable $pseudo pointe vers l'attribut $_pseudo
$longueur = strlen($pseudo); // compte combien il y a de caractères dans le pseudo entré
$pris = self::$bdd->query('SELECT id FROM `espace_membre` WHERE `pseudo`='$pseudo''); // vérifie dans la bdd si le pseudo entré est deja dans la bdd
if ($longueur<= 20 AND $pris== false){
return true;
}
else
{
self::$_error = " Votre pseudo comprends plus de 20 caractéres et/ou est déjà pris par un autre membre !" ;
return false;
}
}
static public function mdp()
{
$pass_hache = sha1($_POST['pass']);// hash du mdp
$mdp = self::$_mot_de_passe;
$mdp2 = self::_re_mot_de_passe;
if ($mdp==$mdp2)// vérifie si les 2 mots de passes sont identiques
{
return true;
}
else
{
selff::$_error = "Vos mots de passes sont différent, veuillez les retapez à l\'indentique.";
return false;
}
}
static public function email()
{
$mail = self::$_email;
$email = self::$_re_email;
if (preg_match("#^[a-z0-9._-]+@[a-z0-9._-]{2,}\.[a-z]{2,4}$#", $mail) AND $mail==$email )
{
return true;
}
else
{
selff::$_error = 'L\'adresse ' . $mail . ' n\'est pas valide, recommencez !';
return false;
}
}
static public function envoyerEMail($titre, $message)
{
mail(self::$_email, $titre, $message);
}
static public function bannir()
{
self::$_actif = false;
self::envoyerEMail('Vous avez été banni', 'Ne revenez plus !');
}
static public function monde()
{
$monde->_univers;
$monde[] = 'Fairy Tail';
$monde[] = 'One Piece';
$monde[] = 'Naruto';
}
static public function personnage ()
{
$personnage = self::$_personnage;
if ( $monde== $monde[1])
{
echo $personnage[] = 'Natsu';
$personnage[] = 'Leon';
$personnage[] = 'Lucy';
$personnage[] = 'Wendy';
$personnage[] = 'Erza';
$personnage[] = 'Jubia';
$personnage[] = 'alya';
$personnage[] = 'mister sol';
$personnage[] = 'totomaru';
$personnage[] = 'jura';
$personnage[] = 'kagura';
$personnage[] = 'cobra';
}
elseif ($monde==$monde[2])
{
echo $personnage[] = 'Natsu';
$personnage[] = 'Leon';
$personnage[] = 'Lucy';
}
else
{
echo $personnage[] = 'Natsu';
$personnage[] = 'Leon';
$personnage[] = 'Lucy';
}
}
public static function insription(){
self::$bdd->exec(INSERT INTO espace_membre(pseudo, mot de passe, email, univers, personnage, actif));
$req->execute(array(
'pseudo' =>self::$_pseudo,
'mot de passe' =>self::$_mot_de_passe,
'email' =>self::$_email,
'univers' =>self::monde(),
'personnage' =>self::personnage (),
'actif' =>self::bannir()
));
if self::inscription()
{header('Location: inscription3.php');
}
else
{ echo 'Une erreur c\'\ est produite lors de votre insccription'
}
}
}
$membre = new Membre($bdd,$pseudo,$mdp,$remdp,$email,$remail);
?>