Ce site utilise des cookies pour améliorer uniquement votre expérience utilisateur.
Vous pouvez lire à tout moment comment nous utilisons les cookies sur le site.
Bonjour,
Je suis en train de suivre le tutoriel "Créer un site de rencontre" , mais au niveau de la leçon "#5 Formulaire d'inscription en PHP", je bloque.
Il me semble avoir bien suivi toutes les indications, mais lorsque je m'inscris sur mon site, aucune donnée n'apparait ensuite sur ma DB (phpMyAdmin).
Voici le code de ma page inscription.php :
<?php
session_start();
include_once('db/connexionDB.php');
if(!empty($_POST)){;
extract($_POST);
$valid = true;
if(isset($_POST['inscription'])){
$pseudo = (String) trim($pseudo);
$mail = (String) trim($mail);
$password = (String) trim($password);
if(empty($pseudo)){
$valid = false;
$err_pseudo = "Obligatorio";
}else{
$req = $BDD->prepare("SELECT id
FROM usuario
WHERE pseudo = ?");
$req->execute(array($pseudo));
$usuario = $req->fetch();
if(isset($usuario['id'])){
$valid = false;
$err_pseudo = "Ce pseudo existe déjà";
}
}
if(empty($mail)){
$valid = false;
$err_mail = "Obligatorio";
}else{
$req = $BDD->prepare("SELECT id
FROM usuario
WHERE mail = ?");
$req->execute(array($mail));
$usuario = $req->fetch();
if(isset($usuario['id'])){
$valid = false;
$err_mail = "Ce mail existe déjà";
}
}
if(empty($password)){
$valid = false;
$err_password = "Obligatorio";
}
if($valid){
$date_inscription = date("Y-m-d h:m:s");
$password = crypt($password, '$6$rounds=5000$H4eoaj87enek72Ondehb923Ybelman82jn83nN31O$');
$req = $BDD->prepare("INSERT INTO usuario (pseudo, mail, password, date_inscripyion)
VALUES (?, ?, ?, ?");
$req->execute(array($pseudo, $mail, $password, $date_inscription));
header('Location: /');
exit;
}
}
}
?>
<!doctype html>
<html lang="fr">
<head>
<!-- Required meta tags -->
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<!-- Bootstrap CSS -->
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous">
<link rel="stylesheet" href="stylefin.css">
<title>Connexion</title>
</head>
<body>
<?php
require_once('menu.php');
?>
<h1>Inscription</h1>
<form method="post">
<section>
<div>
<?php
if(isset($err_pseudo)){
echo $err_pseudo;
}
?>
<input type="text" name="pseudo" placeholder="Pseudo" value="<?php if(isset($pseudo)){ echo $pseudo;} ?>">
</div>
<div>
<?php
if(isset($err_mail)){
echo $err_mail;
}
?>
<input type="text" name="mail" placeholder="Mail" value="<?php if(isset($mail)){ echo $mail;} ?>">
</div>
<div>
<?php
if(isset($err_password)){
echo $err_password;
}
?>
<input type="password" name="password" placeholder="Mot de passe" value="<?php if(isset($password)){ echo $password;} ?>">
</div>
</section>
<input type="submit" name="inscription" value="S'inscrire">
</form>
<!-- Optional JavaScript -->
<!-- jQuery first, then Popper.js, then Bootstrap JS -->
<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js" integrity="sha384-UO2eT0CpHqdSJQ6hJty5KVphtPhzWj9WO1clHTMGa3JDZwrnQq4sF86dIHNDz0W1" crossorigin="anonymous"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js" integrity="sha384-JjSmVgyd0p3pXB1rRibZUAYoIIy6OrQ6VrjIEaFf/nJGzIxFDsf4x0xIM+B07jRM" crossorigin="anonymous"></script>
</body>
</html>
Et voilà le code de ma connexionDB.php :
<?php
// Déclaration d'une nouvelle classe
class connexionDB {
private $host = 'localhost'; // nom de l'host
private $name = 'proyecto'; // nom de la base de donnée
private $user = 'root'; // utilisateur
private $pass = 'root'; // mot de passe (il faudra peut-être mettre '' sous Windows)
private $connexion;
function __construct($host = null, $name = null, $user = null, $pass = null){
if($host != null){
$this->host = $host;
$this->name = $name;
$this->user = $user;
$this->pass = $pass;
}
try{
$this->connexion = new PDO('mysql:host=' . $this->host . ';dbname=' . $this->name,
$this->user, $this->pass, array(PDO::MYSQL_ATTR_INIT_COMMAND =>'SET NAMES UTF8MB4',
PDO::ATTR_ERRMODE => PDO::ERRMODE_WARNING));
}catch (PDOException $e){
echo 'Erreur : Impossible de se connecter à la BDD !';
die();
}
}
public function connexion(){
return $this->connexion;
}
}
$DB = new connexionDB;
$BDD = $DB->connexion();
?>
Merci d'avance à ceux qui prendront le temps d'y jeter un oeil.
Sur ce, bonne journée !
Même pb pour ma part
Bonsoir @figuepants,
Bienvenue sur le Sitedudev 🥳
Comment as-tu fais pour obtenir le code ? Tu l'as téléchargé ou tu as fais un copier-coller ? 🤔
Je te demande ça parceque certains caractères ne sont pas pris en compte en copiant le code et ça peut afficher des erreurs toute bête 😉
Bonne soirée 😁