Exemplo n.º 1
0
}
if (!empty($_POST)) {
    $validator = new Validator($_POST);
    $validator->isEmail('email', 'Email non valide');
    $validator->isPassword('passwd', 'Mot de passe invalide');
    $validator->isAlpha('firstname', 'Format du prénom invalide');
    $validator->isAlpha('lastname', 'Format du nom invalide', false);
    $validator->isTel('number', 'Format du numéro de téléphone invalide', false);
    $validator->isSexe('sexe', 'Format du sexe invalide', false);
    $validator->isUrl('website', 'Format du site web invalide', false);
    $validator->isDate('birthday', 'Format de la date invalide');
    $validator->isAlphaCaractere('ville', 'Format de la ville invalide', false);
    $validator->isColor('color', 'Format de la couleur invalide', false);
    $validator->isPicture('picture', 'Format de la photo invalide', false);
    $validator->isTaille('taille', 'Format de la taille invalide', false);
    if ($validator->isValid()) {
        $db = App::getDataBase();
        $result = $db->prepare('SELECT * FROM users WHERE email = :email', ['email' => $_POST['email']]);
        if (count($result) == 1) {
            $errors = ['Email existant'];
        } else {
            $db->insert("INSERT INTO users (email, password, nom, prenom, tel, website, sexe, birthdate, ville, taille, couleur, profilepic)\n                      VALUES (:email, :password, :nom, :prenom, :tel, :website, :sexe, :birthday, :ville, :taille, :couleur, :profilepic)", ['email' => $_POST['email'], 'password' => hash('sha256', $_POST['passwd']), 'nom' => $_POST['firstname'], 'prenom' => $_POST['lastname'], 'tel' => $_POST['number'], 'website' => $_POST['website'], 'sexe' => empty($_POST['sexe']) ? null : $_POST['sexe'], 'birthday' => $_POST['birthday'], 'ville' => $_POST['ville'], 'taille' => $_POST['taille'], 'couleur' => str_replace('#', '', $_POST['color']), 'profilepic' => $_POST['picture']]);
            App::getAuth()->login(App::getDataBase(), $_POST['email'], $_POST['passwd']);
        }
    } else {
        $errors = $validator->getErrors();
    }
}
?>
<div class="col-md-4 col-xs-12" style="opacity: 0.95">
    <?php