PHP

Problème d'envoi mail suite à l'inscription

Non Résolu

Bonjour,


J'ai tout recommencé le formulaire d'inscription. Mais voilà avec WampServer j'ai des erreurs lors de l'envoi d'inscription à la BDD et bien entendu rien ne s'inscrit dans la BDD.


Erreur me dit : Remarque: Index non défini: email dans C:\..... ligne 48


// On vérifit que l'adresse email est dans le bon format
            elseif(!preg_match("/^[a-z0-9\-_.]+@[a-z]+\.[a-z]{2,3}$/i", $mail)) {
                $valid = false;
                $er_mail = "Votre adresse email n'est pas valide";
            }
            else {
                // On vérifit que le mail est disponible
                $req_mail = $DB->query("SELECT mail FROM utilisateur WHERE mail = ?",
                    array($mail));


                $req_mail = $req_mail->fetch();


                if ($req_mail['mail'] <> "") {
                    $valid = false;
                    $er_mail = "Cette adresse email existe déjà dans notre BDD";
                }
            }


Ma deuxième erreur ce trouve être celle ci :  Erreur fatale: Erreur non interceptée: Impossible d'utiliser l'objet de type PDOStatement comme tableau dans C: \.... ligne 54 qui ce trouve etre entre le fetch() et le if il y a un autre message avec toujours à la ligne 54 :

Erreur: impossible d'utiliser l'objet de type PDOStatement comme tableau dans


            else {
                // On vérifit que le mail est disponible
                $req_mail = $DB->query("SELECT mail FROM utilisateur WHERE mail = ?",
                    array($mail));


                $req_mail = $req_mail->fetch();


                if ($req_mail['mail'] <> "") {
                    $valid = false;
                    $er_mail = "Cette adresse email existe déjà dans notre BDD";
                }
            }


Sur MAMP je n'ai pas d'erreur mais je ne reçois rien du tout par mail et rien ne s'inscrit sur la BDD. Ma connexion à la BDD est bonne je l'ai vérifié avec un script trouvé sur le net.


Merci pour votre aide car là je patauge un peut dans la semoule 😤😓.

1068 vues
12 décembre 2020 à 22:39 (Édité)
Cette pub permet au site de vivre ...

17 commentaires

Re: @Meegolo 😉


Non je confirme, il n'y a pas d'erreur dans ta base de donnée !

As-tu changé ce qu'il fallait dans le fichier XAMPP, dans le lien que je t'ai envoyé ?

Merci, mais tu vois au niveau de ma BDD je ne vois rien qui me ferais dire qu'il a une erreur et que je devais refaire ma BDD. Je l'ai exporté la voici ci-dessous.


CREATE TABLE `utilisateur` (
  `id` int(4) NOT NULL,
  `nom` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL,
  `prenom` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL,
  `mail` varchar(150) COLLATE utf8mb4_unicode_ci NOT NULL,
  `mdp` text COLLATE utf8mb4_unicode_ci NOT NULL,
  `date_creation_compte` datetime NOT NULL,
  `token` text COLLATE utf8mb4_unicode_ci NOT NULL,
  `confirmation_token` datetime NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Index pour la table `utilisateur`
--
ALTER TABLE `utilisateur`
  ADD PRIMARY KEY (`id`),
  ADD UNIQUE KEY `mail` (`mail`);

Re: @Meegolo 😁,


Euh ouais excuse moi pour le lien ! Du coup je l'ai édité !

Pour ce qu'il est en est du problème que tu as énoncé sur les email, j'en ai parlé à @Clouder, il règlera ça !


Pour paramétrer sendmail sur XAMPP regarde: ce tutoriel pourra t'aider ^^


Florent👌

Merci pour ta réponse.

Le lien que tu m'as donné n'est pas valide "La page n'existe pas ou plus !". Le lien que l'on recois par mail lorsqu'on recoit une notification comme quoi on a reçu une réponse c'est pareil.

Pour les envois de mail, j'utilise sendmail et je l'ai testé avec XAMPP ca n'a pas fonctionné. Avec Wamp ca fonctionne et MAMP aussi. 😢

Re:


@Meegolo, je pense qu'il faut refaire la base de donnée non ?

Regarde ici: Lien base de donnée.

Pour l'envoi de ton email je te conseillerai PHP Mailer car il est plus simple à utiliser !

Bonjour @Flomir72,


c'est fait, je viens de l'installer et d'essayer le script avec XAMPP.

Il réagit comme MAMP, j'ai aucune erreur, mais rien ne s'inscrit dans la BDD sur XAMPP.

Je ne reçois pas non plus le mail de confirmation, bien que j'ai configurer mon php.ini.

Bonsoir @Meegolo 😀,


Il faut que tu saches que Wamp possède des défauts; la communauté de Sitedudev conseille d'utiliser Xampp au lieu de Wamp: voir la raison

Remplace ça et on t'aide ensuite !


Redis-nous !

Bon courage 👍

Cette pub permet au site de vivre ...
1
2