8016 sujets

Développement web côté serveur, CMS

Bonjour, je suis nouveau dans l'univers du php et j'ai vu un sujet sur ce forum : https://forum.alsacreations.com/topic-20-56743-1-Formulaire-dinscription-et-desinscription.html

Mon but est d'intégrer en fin de page, un espace pour s'inscrire à ma newsletter comme le sujet le dis c'est à dire en stockant les mail inscrit sur un .txt , la seule différence étant que je ne veux pas de choix entre inscription et désincription, juste de l'inscription. Ce que j'ai fais marche visuellement mais : le message de confirmation ne s'affiche pas et les mails ne sont pas stockés dans le .txt ...

Voici le code:
<?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";
			$fh = fopen($file, 'a');
			if ($fh)
			{
				fwrite($fh, $data);
				fclose($fh);
				$message = 'Vous êtes maintenant inscrit à notre newsletter.';
			}
	}	else {
		$message = 'Cette adresse email est invalide.';
	}
}
?>

<!DOCTYPE html>
<html lang="fr">
<head>
    <!-- Global site tag (gtag.js) - Google Analytics -->
    <script async src="https://www.googletagmanager.com/gtag/js?id=UA-154627260-1"></script>
    <script>
        window.dataLayer = window.dataLayer || [];
        function gtag() { dataLayer.push(arguments); }
        gtag('js', new Date());

        gtag('config', 'UA-154627260-1');
    </script>
    <title>Vu d'un autre oeil - Accueil</title>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">

    <link href="https://fonts.googleapis.com/css?family=Quicksand:300,400,500,700,900" rel="stylesheet">
    <link rel="stylesheet" href="fonts/icomoon/style.css">
    <link rel="stylesheet" href="css/bootstrap.min.css">
    <link rel="stylesheet" href="css/magnific-popup.css">
    <link rel="stylesheet" href="css/jquery-ui.css">
    <link rel="stylesheet" href="css/owl.carousel.min.css">
    <link rel="stylesheet" href="css/owl.theme.default.min.css">
    <link rel="stylesheet" href="css/bootstrap-datepicker.css">
    <link rel="stylesheet" href="fonts/flaticon/font/flaticon.css">
    <link rel="stylesheet" href="css/aos.css">
    <link rel="stylesheet" href="css/fancybox.min.css">
    <link rel="stylesheet" href="css/style.css">
    <script data-ad-client="ca-pub-4034228286845002" async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
</head>
<body>
    <div class="background">

        <div class="site-wrap">

            <div class="site-mobile-menu">
                <div class="site-mobile-menu-header">
                    <div class="site-mobile-menu-close mt-3">
                        <span class="icon-close2 js-menu-toggle"></span>
                    </div>
                </div>
                <div class="site-mobile-menu-body"></div>
            </div>

            <header class="header-bar d-flex d-lg-block align-items-center" data-aos="fade-left">
                <div class="site-logo">
                    <a href="index.html">Vu d'un autre oeil</a>
                </div>

                <div class="d-inline-block d-xl-none ml-md-0 ml-auto py-3" style="position: relative; top: 3px;"><a href="#" class="site-menu-toggle js-menu-toggle text-white"><span class="icon-menu h3"></span></a></div>

                <div class="main-menu">
                    <ul class="js-clone-nav">
                        <li class="active"><a href="index.php">Home</a></li>
                        <li><a href="photos.html">Photos</a></li>
                        <li><a href="report1.html">Trip Reports</a></li>
                        <li><a href="contact.php">Contact</a></li>
                    </ul>

                    <ul class="social js-clone-nav">
                        <li><a href="https://www.facebook.com/vudunautreoeil.fr"><span class="icon-facebook"></span></a></li>
                        <li><a href="https://www.instagram.com/vudunautreoeil.fr"><span class="icon-instagram"></span></a></li>
                        <li><a href="mailto:contact@vudunautreoeil.fr"><span class="icon-envelope"></span></a></li>
                    </ul>
                </div>
            </header>
            <main class="main-content">
                <div class="container-fluid photos">
                    <div class="row justify-content-center">

                        <div class="col-md-5 pt-4">
                            <figure class="mb-5" data-aos="fade-up">
                                <img src="images/main1.jpg" alt="Image" class="img-fluid">
                            </figure>

                            <h2 class="text-white mb-4" data-aos="fade-up">Hello! Bienvenue sur notre site</h2>

                            <div class="row" data-aos="fade-up">
                                <div class="col-md-12">
                                    <p>Nous sommes Emile et Florian, deux passionnés de photographie/prises de vues, et avons décidés, par l'intermédiaire de ce site, de vous partager nos plus belles aventures!</p>
                                    <p>Bonjour! Je suis <b>Emile</b>, étudiant à Limoges. Comme cité précedemment, je suis passionné de photographie depuis mon plus jeune âge. J'utilise actuellement un Nikon avec objectif grand-angle (18/55mm - f/3.5) et téléobjectif (70/300mm - f/4.5), un angénieux (28/70mm - f/2.6) ou encore un Meike 8mm  lorsque je prend des photos. J'ai effectué plusieurs voyages à l'étrangé dont voilà un résumé :</p>
                                    <p>Bienvenue! Moi, c'est <b>Florian</b>. Aussi étudiant, je me suis toujours intéréssé à la photographie mais depuis quelques temps, je me suis mis à faire des prises de vues aériennes. Pour mes photos, j'utilise un iPhone 11 Pro doté de trois objectifs : un ultra grand-angle (13 mm - 12 Mpx - f/2,4), un grand-angle (26 mm - 12 Mpx - f/1,8) et un téléobjectif (52 mm - 12 Mpx - f/2,0). Pour les prises de vues aériennes, j'utilise un DJI Mavic Air lui même doté d'un objectif (24 mm - 12 Mpx - f/2,8) permettant de filmer en 4K 30 fps stabilisé sur 3 axes. Je suis de même un aficionado de voyages dont voilà une liste : </p>
                                    <p class="mb-5">
                                        Ce projet n'est pas seulement le nôtre, il est celui de tous ceux qui partagent leurs expériences et leurs images avec nous. On citera :<br />
                                        - <b>Amélie</b> et son iPhone x avec deux caméras : un grand-angle (28 mm - 12 Mpx - f/1,8) et un téléobjectif (52 mm - 12 Mpx - f/2,4). Elle aussi passionné de voyages, elle nous a rapporté les albums de Londres et de Thaïlande.
                                    </p>

                                    <p cass="mt-4">Bon visionnage!</p>
                                </div>
                            </div>
                        </div>
                    </div>
                    <div class="row justify-content-center">
                        <div class="col-md-5 pt-4">
                            <div class="row" data-aos="fade-up">
                                <form id="frm_newsletter" method="post" action="index.php">
                                    <fieldset>
                                        <?php if (!empty($message)): ?>
                                        <p>
                                            <?php echo $message; ?>
                                        </p>
                                        <?php endif; ?>
                                        <div class="col-md-12">
                                            <label for="email">Si vous souhaitez suivre toute notre actualité, inscrivez-vous à notre newsletter !</label>
                                            <input type="email" name="email" id="email" placeholder="Votre adresse Email" class="form-control"><br>
                                        </div>
                                        <div class="col-md-12">
                                            <input type="submit" value="S'inscrire" name="subscribe_submit" class="btn btn-primary btn-md text-white">
                                        </div>
                                    </fieldset>
                                </form>
                            </div>
                        </div>
                    </div>
                    <div class="row justify-content-center">
                        <div class="col-md-12 text-center py-5">
                            <p>
                                <!-- Link back to Colorlib can't be removed. Template is licensed under CC BY 3.0. -->
                                Copyright &copy;
                                <script>document.write(new Date().getFullYear());</script> All rights reserved - Florian Chissadon & Emile Blain | This template is made with <i class="icon-heart" aria-hidden="true"></i> by <a href="https://colorlib.com" target="_blank">Colorlib</a>
                                <!-- Link back to Colorlib can't be removed. Template is licensed under CC BY 3.0. -->
                            </p>
                        </div>
                    </div>
                </div>
        </div>
    </div></main>
    <!-- .site-wrap -->
    <script src="js/jquery-3.3.1.min.js"></script>
    <script src="js/jquery-migrate-3.0.1.min.js"></script>
    <script src="js/jquery-ui.js"></script>
    <script src="js/popper.min.js"></script>
    <script src="js/bootstrap.min.js"></script>
    <script src="js/owl.carousel.min.js"></script>
    <script src="js/jquery.stellar.min.js"></script>
    <script src="js/jquery.countdown.min.js"></script>
    <script src="js/jquery.magnific-popup.min.js"></script>
    <script src="js/bootstrap-datepicker.min.js"></script>
    <script src="js/aos.js"></script>
    <script src="js/jquery.fancybox.min.js"></script>
    <script src="js/main.js"></script>
</body>
</html>


Merci!
Modérateur
vudunautreoeil a écrit :



...
if (!empty($_POST['email']) && !empty($_POST['object']))
...




Et l'eau,

Que vaut ça ? Smiley cligne

echo $_POST['object'];


ps : il n'est pas utile que tu utilises header() puisque tu affiches un DOM complet.
Modifié par niuxe (10 Jan 2020 - 00:25)