je ne vois pas mes ereure la je vous colle tout ma conection
Posté : 18 oct. 2014, 17:27
conection a bdd je ne vois pas ou est l ereur et la je suis tout perdu surtout que ses pas mon codage préférer
merci de m éclairer
ici ma class enregistrement
function bdd(){
try
{
$pdo_options[pdo::ATTR_ERRMODE] = pdo::ERRMODE_EXCEPTION;
$bdd = new PDO('mysql:host=localhost;dbname=app','root','','$pdo_options');
}
catch (exception $e)
{
die( 'erreur : ' . $e());
}
return $bdd;
}
ici ma class enregistrement
include_once 'inscription.php';
class inscription{
public $pseudo;
public $email;
private $mdp;
private $mdp2;
private $bdd;
public function __construct($pseudo,$email,$mdp,$mdp2){
$pseudo = htmlspecialchars($pseudo);
$email = htmlspecialchars($email);
$this->pseudo = $pseudo;
$this->email = $email;
$this->mdp = $mdp;
$this->mdp2 = $mdp2;
$this->bdd = bdd();
}
public function verif(){
if(strlen($this->pseudo)> 5 and strlen($this->pseudo)< 20 ){ // le pseudo doigt contenire entre 5 et 20 caracteres
if(strlen($this->mdp)> 5 and strlen($this->mdp)< 20 ){ // le mot de passe doigt contenire entre 5 et 20 caracteres
if($this->mdp == $this->mdp2){ //meme mots de passe
return TRUE;
}
else{ // mot de passe dif
$erreur ='les mot passe sont diferent';
return $erreur;
}
}
else{
$erreur = 'le mot de passe doigt contenire entre 5 et 20 caracteres';
return $erreur;
}
}
else {
$erreur = 'le pseudo doigt contenire entre 5 et 20 caracteres';
return $erreur;
}
}
public function enregistrement(){
$requete = $this->bdd->prepare("INSERT INTO membres(pseudo, email, mdp) VALUES (pseudo, email, mdp)");
$requete->execute(array(
'pseudo'=> $this->pseudo,
'email'=> $this->email,
'mdp'=> $this->mdp
));
return 1;
}
}
ici mon form pour la class-inscription
<?php
session_start();
include_once 'function.php';
include_once 'class.inscription.php';
$bdd = bdd();
if(isset($_POST['pseudo'])AND isset($_POST['email'])AND isset($_POST['mdp'])AND isset($_POST['mdp2'])){
$inscription = new inscription($_POST['pseudo'],$_POST['email'],$_POST['mdp'],$_POST['mdp2']);
$verif = $inscription->verif();
if($verif == "ok"){ // tout est bon
if($inscription->enregistrement()){
header('location : index.php');
}
else{ // ereure lors de l enregistrement
echo 'Une erreur est survenue';
}
}
else{
$erreur = $verif;
}
}
?>
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>prog avancer</title>
</head>
<body>
<h1>Conection</h1>
<form method="post" action="inscription.php">
<p>
<input name="pseudo" type="text" placeholder="pseudo..." required /><br>
<input name="email" type="email" placeholder="adresse email..." required /><br>
<input name="mdp" type="password" placeholder="mot de passe..." required /><br>
<input name="mdp2" type="password" placeholder="confirmation..." required /><br>
<input type="submit" value="S'inscrire!"/>
</p>
</form>
</body>
</html>
ici ma clas conection au membre<?php
include_once 'function.php';
class connexion{
public $speudo;
private $mdp;
private $bdd;
public function __construct($speudo,$mdp){
$this->speudo = $speudo;
$this->mdp = $mdp;
$this->bdd = bdd();
}
public function verif(){
$requete =$this->bdd->prepare("SELECT * FROM membres WHERE pseudo");
$requete->execute(array('speudo'=> $this->pseudo));
$reponse = $requete->fetch();
if($reponse){
return 'TRUE';
}
else{
$erreur = 'le pseudo est incorect';
return $erreur;
}
}
}
?>
ici la for de conection<?php
session_start();
include_once 'function.php';
include_once 'class.connection.php';
$bdd = bdd();
if(isset($_POST['speudo']) AND isset($_POST['mdp'])){
$connexion = new connexion($_POST['speudo'],$_POST['mdp']);
$verif = $connexion->verif();
if($verif =="true"){
}
else{
$erreur = $verif;
}
}
?>
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>prog avancer</title>
</head>
<body>
<h1>Conection</h1>
<form method="post" action="login.php">
<p>
<input name="pseudo" type="text" placeholder="pseudo..." required /><br>
<input name="mdp" type="password" placeholder="mot de passe..." required /><br>
<input type="submit" value="conection"/>
<?php
if(isset($erreur)){
echo $erreur;
}
?>
</p>
</form>
</body>
</html>