Petit problème Formulaire

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Petit problème Formulaire

Re: Petit problème Formulaire

par @rthur » 13 mai 2019, 18:58

Bonjour,

Il faut que tu utilises file_get_contents() pour récupérer la liste de tous tes abonnés (comme tu le fais déjà d'ailleurs pour la désinscription)
Puis il faut tester la présence du mail saisi dans ce contenu. Tu peux le faire assez facilement avec la fonction preg_match()
http://php.net/preg_match

Petit problème Formulaire

par Wash » 13 mai 2019, 17:56

Bonjour la Communauté,
Voila je bute sur un petit problème dans mon script. Je m'explique :
je fais un petit formulaire PHP simple pour une newsletter sans BD,. Inscription - Désinscription.
Jusque la pas de problème il fonctionne nickel. Maintenant je n'arrive pas a mettre la fonction pour dire
que le nom est déjà enregistré et qu'on ne puisse pas s’inscrire plusieurs fois...
Je vous donne mon code :

Code : Tout sélectionner

<?php header('Content-Type: text/html; charset=utf-8'); header('Content-Language: fr'); if (!empty($_POST['email']) && !empty($_POST['object'])) { $email = strtolower(trim($_POST['email'])); $file = 'email_list.txt'; if (filter_var($email, FILTER_VALIDATE_EMAIL)) { $data = $_POST['email']."\n"; if ($_POST['object'] == 'subscribe') { $fh = fopen($file, 'a'); if ($fh) { fwrite($fh, $data); fclose($fh); $message = 'Vous êtes maintenant inscrit à notre newsletter.'; } } else { $content = file_get_contents($file); $content = str_replace($data, '', $content); file_put_contents($file, $content); $message = 'Vous êtes maintenant désinscrit de notre newsletter.'; } } else { $message = 'Cette adresse email est invalide.'; } } ?>
Merci à vous
Washoung