Message erreur lors de la lecture de la base de donnée
Posté : 29 mars 2022, 22:46
Bonjour à tous, je me suis lancer dans un projet mais pour limiter la duplication de compte je ne veux pas qu'il soit possible de mettre plusieurs fois le même email, téléphone et pseudo. J'ai établie un script qui fait que si le pseudo/email/n° de téléphone n'est pas présent dans la bdd alors cela me permet de continuer d'avancer dans le script et initialise une connexion avec $_SESSION (j'ai bien déclarer session_start au début du script) sauf que voila j'ai cinstament le message "Trying to access array offset on value of type bool" qui revient en permanence et je ne comprend pas :/
$infosUtilisateur = $bdd->prepare('select * from membres where pseudo = ? OR email = ? OR telephone = ?'); // Selectionne les données dans membres pour la vérification pseudo et email
$infosUtilisateur->execute(array($pseudo, $email, $telephone));
$verifUtilisateur = $infosUtilisateur->fetch();
$verifPseudo = $verifUtilisateur['pseudo']; // Insère tous les pseudo dans la variable verifPseudo
$verifEmail = $verifUtilisateur['email']; // Insère tous les email dans la variable verifEmail
$verifTelephone = $verifUtilisateur['telephone']; // Insère tous les email dans la variable verifEmail
if(empty($verifEmail)){ // Si le email n'est pas
if(empty($verifPseudo)){ // Si le pseudo n'est pas
if(empty($verifTelephone)){ // Si le pseudo n'est pas utilisé alors
$inserUtilisateur = $bdd->prepare('INSERT INTO membres(nom, prenom, pseudo, password, ville, telephone, email, genre, sexualite, jour, mois, annee)VALUES(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)'); // Insertion des valeurs dans la table membres de la bdd mais nous ne savons pas dans quelle case
$inserUtilisateur->execute(array($nom, $prenom, $pseudo, $password, $ville, $telephone, $email, $genre, $sexualite, $jour, $mois, $annee)); // Les valeurs sont inserées dans les case du tableau membres respectives
if($inserUtilisateur->rowCount() > 0){ // Si le nombre de données trouvé dans récupUser (donc qu'il existe) est supérieur à zéro alors
//On peut continuer car nous savon que l'utilisateur existe
$_SESSION['pseudo'] = $pseudo; //le pseudo de session est égal à celui associer au sien dans la bdd
$_SESSION['password'] = $password; //Le mdp de session est égal à celui associer au sien dans la bdd
$_SESSION['membreId'] = $inserUtilisateur->fetch()['membreId']; //fetch vas extraire toutes les donées de recupUser et nous indiquons que nous voulons seulement l'ID car la valeur seras trasmise à l'id de session
$_SESSION['nom'] = $inserUtilisateur->fetch()['nom']; //le nom de session est égal à celui associer au sien dans la bdd
$_SESSION['prenom'] = $inserUtilisateur->fetch()['prenom'];//le prenom de session est égal à celui associer au sien dans la bdd
}else
echo'Numéro de téléphone d
}
echo'Pseudo
echo "Email
}