A11111*
-
Modifié le 25 août 2020 à 19:03
Whismeril
Messages postés18797Date d'inscriptionmardi 11 mars 2003StatutContributeurDernière intervention 3 décembre 2023
-
25 août 2020 à 20:30
Bonjour,
J'ai encore une fois besoin de votre aide mon code de connexion et inscription était normal , quand j'ai essayé une nouvelle fois inscription ou connexion je reçois l'erreur :
Fatal error: Uncaught Error: Call to a member function prepare() on null in C:\wamp644\www\includes\connexion.php on line 8
( ! ) Error: Call to a member function prepare() on null in C:\wamp644\www\includes\connexion.php on line 8
Call Stack
<?php
if(isset($_POST['formlogin']))
{
extract($_POST);
if(!empty($adresse) && !empty($motdepasse))
{
$q=$db->prepare("SELECT * FROM utilisateurs WHERE Email=:Email");
$q->execute
(['Email'=>$adresse]);
$result=$q->fetch();
if($result==true){
$hashpassword=$result['password'];
if(password_verify($motdepasse,$result['password'])){
echo "Connexion en cours";
$_SESSION['Email']=$result['Email'] ;
}else {
echo "Mot de passe incorrect";
}
}
else{
echo "Le compte portant l'email ".$adresse." n'existe pas";
}
}
else{
echo 'Veuillez remplir tous les champs';
}
}
?>
Pour le fichier inscription.php :
<?php
if(isset($_POST["formsend"])){
extract($_POST);
if(!empty($password) && !empty($cpassword) && !empty($Email) && !empty($Nom) && !empty($Prenom)){
if($password==$cpassword){
$options=[
'cost'=>12
];
$hashpass=password_hash($password,PASSWORD_BCRYPT,$options);
$c=$db->prepare("SELECT Email FROM utilisateurs WHERE Email=:Email");
$c->execute(['Email'=>$Email]);
$result=$c->rowcount();
if ($result==0){
$sql = "INSERT INTO utilisateurs (Nom,Prenom,Email,password) VALUES (:Nom,:Prenom,:Email,:password)";
$datas = array(':Nom'=>$Nom, ':Prenom'=>$Prenom,':Email'=>$Email,':password'=>$hashpass);
//Execution de la requete
try{
$requete = $db-> prepare($sql) ;
$requete->execute($datas) ;
}catch(Exception $e){
// en cas d'erreur :
echo " Erreur ! ".$e->getMessage();
}
echo "Le compte a été créé";
}else {
echo "Le mail existe déjà";
}
}else{
echo "Les champs ne sont pas tous remplis";
}
}
}
?>
Bonjour je l'ai posté dans le forum parcequ'il m'a demandé de ne plus utiliser ce site , et pour les balises de code j'ai suivi le site et je les ai ajoutés .
J'ai cliqué sur la flèche et j'ai cliqué sur php au début de chaque code comme l'indique le lien je ne sais pas comment faire pour corriger mon code de manière à être plus explicite avecc les lignes et les balises en couleur comme dans mon code , si vous pouvez me suggérer ce que je dois ajouter . Merci pour votre aide .
Vous n’avez pas trouvé la réponse que vous recherchez ?