Flux rss
Collection CommentCaMarche.net
Rechercher : dans
Par : Pertinence Date Nom d'utilisateur
Statut : Non résolu

Newsletter entierement en php

webmaster-debutant, le mercredi 30 juillet 2008 à 15:13:49
Bonjour,

j'ai decidé de commencer de creer la page newsletter seulement en php, et j'ai reussi, mais par contre pour voir si je recois bien une mail, en disant "pour activer votre inscription, cliquez ici", j'ai ecrit mon adresse e-mail, mais je ne recois pas de mails.

pour cela je vous envoye les fichiers:

index.php:

<?php
if(isset($_GET['email'])) //on vérifie que la variable $_GET['email'] existe
{

if( !empty($_POST['email']) AND $_GET['email']==1 AND isset($_POST['new'])) /*on vérifie que la variable $_POST['email'] contient bien quelque chose, que la variable $_GET['email'] est égale à 1 et que la variable $_POST['new'] existe */
{
if (preg_match("#^[a-z0-9._-]+@[a-z0-9._-]{2,}\.[a-z]{2,4}$#", $_POST['email'])) // on vérifie qu'on a bien rentré une adresse e-mail valide
{

if($_POST['new']==0) //si la variable $_POST['new'] est égale à 0, cela signifie que l'on veut s'inscrire
{

//on définit les paramètres de l'e-mail
$email = $_POST['email'];
$message = 'Pour valider votre inscription à la newsletter de MonSite.fr, <a href="http://www.monsite.fr/inscription.php?tru=1&email='.$email.'">cliquez ici</a>.';

$destinataire = $email;
$objet = "Inscription à la newsletter de MonSite.fr" ;

$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
$headers .= 'From: monsite@monsite.fr' . "\r\n";
if ( mail($destinataire, $objet, $message, $headers) ) //on envoie l'e-mail
{

echo "Pour valider votre inscription, veuillez cliquer sur le lien dans l'e-mail que nous venons de vous envoyer.";
}
else
{
echo "Il y a eu une erreur lors de l'envoi du mail pour votre inscription.";
}
}
elseif($_POST['new']==1) //si la variable $_POST['new'] est égale à 1, cela signifie que l'on veut se désinscrire
{

//on définit les paramètres de l'e-mail
$email = $_POST['email'];
$message = 'Pour valider votre désinscription de la newsletter de MonSite.fr, <a href="http://www.monsite.fr/desinscription.php?tru=1&email='.$email.'">cliquez ici</a>.';

$destinataire = $email;
$objet = "Désinscription de la newsletter de MonSite.fr" ;

$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
$headers .= 'From: monsite@monsite.fr' . "\r\n";
if ( mail($destinataire, $objet, $message, $headers) )
{

echo "Pour valider votre désinscription, veuillez cliquer sur le lien dans l'e-mail que nous venons de vous envoyer.";
}
else
{
echo "Il y a eu une erreur lors de l'envoi du mail pour votre désinscription.";
}
}
else
{
echo "Il y a eu une erreur !";
}
}
else
{
echo "Vous n\'avez pas entré une adresse e-mail valide ! Veuillez recommencer !";
}
}
else
{
echo "Il y a eu une erreur.";
}
}
else // si les champs n'ont pas été remplis
{
?>
La newsletter :
<form method="post" action="index.php?email=1">
Adresse e-mail : <input type="text" name="email" size="25" /><br />
<input type="radio" name="new" value="0" />S''inscrire
<input type="radio" name="new" value="1" />Se désinscrire<br />
<input type="submit" value="Envoyer" name="submit" /> <input type="reset" name="reset" value="Effacer" />
</form>
<?php
}
?>
</body>
</html>

inscriptions.php:

<?php
if($_GET['tru']==1)
{

setcookie("email", $_GET['email'], time()+25); //on crée un cookie qui expirera 25 secondes plus tard pour des raisons de sécurité
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
<head>
<meta http-equiv=Content-Type content="text/html; charset=iso-8859-1">

<?php
if($_GET['tru']==2)
{
?>
<meta http-equiv="refresh" content="1; url=http://lemondedesvotes.idoo.com/" /> <!-- Redirection vers la page d'accueil du site si on a entré son e-mail -->

<?php
}
else
{
?>

<meta http-equiv="refresh" content="25; url=http://lemondedesvotes.idoo.com/" /> <!-- Redirection vers la page d'accueil du site si on tarde trop à entrer son e-mail -->

<?php
}
?>

<title>Validation de votre inscription à la newsletter de MonSite.fr</title>

</head>
<body>
<p align="center"><font size="5">Validation de votre inscription</font></p>
<?php
if($_GET['tru']==1) //si la variable $_GET['tru'] est égale à 1
//on affiche le formulaire
{
?>
<font color="red">Attention, vous avez 25 secondes pour remplir le formulaire. Passé ce délai, celui-ci ne sera plus validePassé ce délai, celui-ci ne sera plus valide.</font>
<form method="post" action="inscription.php?tru=2">
Entrez votre e-mail : <input type="text" name="email" size="25" /><br />
<input type="submit" value="Envoyer" name="submit" /> <input type="reset" name="reset" value="Effacer" />
</form>
<?php
}
elseif($_GET['tru']==2) //sinon, si la variable $_GET['tru'] est égale à 2
{
mysql_connect("serveur", "login", "pass");
mysql_select_db("db");
$email_mail = mysql_real_escape_string($_COOKIE['email']);
$email_entre = mysql_real_escape_string($_POST['email']);

if($email_entre==$email_mail) //si les deux adresses e-mail sont identiques
{
mysql_query("INSERT INTO newsletter VALUES('', '" . $email_entre . "')"); //on l'inscrit dans la base de données MySQL

echo "Vous avez bien été inscrit à la newsletter de MonSite.fr ! Vous allez être redirigé dans 1 seconde.";

}
else
{

echo "Vous n'avez pas entré la bonne adresse e-mail !";

}
}
else
{
echo "Il y a eu une erreur.";
}
?>
</body>
</html>

desinscriptions.php:

<?php
if($_GET['tru']==1)
{

setcookie("email", $_GET['email'], time()+25); //on crée un cookie qui expirera 25 secondes plus tard pour des raisons de sécurité

}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
<head>
<meta http-equiv=Content-Type content="text/html; charset=iso-8859-1">
<?php
if($_GET['tru']==2)
{
?>

<meta http-equiv="refresh" content="1; url=http://lemondedesvotes.idoo.com/" /> <!-- Redirection vers la page d'accueil du site si on a entré son e-mail -->

<?php
}
else
{
?>

<meta http-equiv="refresh" content="25; url=http://lemondedesvotes.idoo.com/" /> <!-- Redirection vers la page d'accueil du site si on tarde trop à entrer son e-mail -->

<?php
}
?>
<title>Validation de votre désinscription de la newsletter de MonSite.fr</title>
</head>
<body>
<p align="center"><font size="5">Validation de votre désinscription</font></p>

<?php
if($_GET['tru']==1) //si la variable $_GET['tru'] est égale à 1
//on affiche le formulaire
{
?>
<font color="red">Attention, vous avez 25 secondes pour remplir le formulaire. Passé ce délai, celui-ci ne sera plus valide.</font>
<form method="post" action="desinscription.php?tru=2">
Entrez votre adresse e-mail : <input type="text" name="email" size="25" /><br />
<input type="submit" value="Envoyer" name="submit" /> <input type="reset" name="reset" value="Effacer" />
</form>
<?php
}
elseif($_GET['tru']==2) //sinon, si la variable $_GET['tru'] est égale à 2
{
mysql_connect("serveur", "login", "pass");
mysql_select_db("db");
$email_mail = mysql_real_escape_string($_COOKIE['email']);
$email_entre = mysql_real_escape_string($_POST['email']);

if($email_entre==$email_mail) //si les deux adresses e-mail sont identiques
{
mysql_query("DELETE FROM newsletter WHERE email='" . $email_entre ."'"); //on supprime l'adresse de la BDD

echo "Vous avez bien été désinscrit de la newsletter de MonSite.fr ! Vous allez être redirigé dans 1 seconde.";

}
else
{
echo "Vous n'avez pas entré la bonne adresse e-mail !!";
}
}
else
{
echo "Il y a eu une erreur.";
}
?>
</body>
</html>

Vous pouvez m'aider?
merci par avance,
Répondre à webmaster-debutant  Signaler ce message aux modérateurs Aller au dernier message

1


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
zzzer, le mercredi 30 juillet 2008 à 15:15:39
AND $_GET['email']==1

Pourquoi avoir fait ça ? (Au début)

N'oubliez pas de marquer la discussion comme résolue dès que­ c'est le cas ! -> En haut de la page, Statut: Résolu
Attention aussi à bien respecter la 6e règle de la charte : 
Rédiger les messages dans un langage clair sans abréviations, style télégraphique ou mode SMS
Répondre à zzzer

2


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
webmaster-debutant, le mercredi 30 juillet 2008 à 15:16:51
parce que j'ai pris du site du zero
Répondre à webmaster-debutant

3


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
zzzer, le mercredi 30 juillet 2008 à 15:18:00
Tout n'est pas toujours bon à recopier, une connaissance personnelle du langage de prog auquel on touche vaut mieux que tout...

Le siteduzero est censé apprendre, pas faire à la place de...

N'oubliez pas de marquer la discussion comme résolue dès que­ c'est le cas ! -> En haut de la page, Statut: Résolu
Attention aussi à bien respecter la 6e règle de la charte : 
Rédiger les messages dans un langage clair sans abréviations, style télégraphique ou mode SMS
Répondre à zzzer

4


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
webmaster-debutant, le mercredi 30 juillet 2008 à 15:19:09
alors faut supprimé ca: AND $_GET['email']==1 ?
Répondre à webmaster-debutant

5


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
zzzer, le mercredi 30 juillet 2008 à 15:23:36
Tu peux essayer, mais j'en suis pas sûr du tout, j'ai pas tout lu (je suis au travail et tu nous as posté un gros pavé difficilement lisible :p)

N'oubliez pas de marquer la discussion comme résolue dès que­ c'est le cas ! -> En haut de la page, Statut: Résolu
Attention aussi à bien respecter la 6e règle de la charte : 
Rédiger les messages dans un langage clair sans abréviations, style télégraphique ou mode SMS
Répondre à zzzer

6


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
webmaster-debutant, le mercredi 30 juillet 2008 à 15:28:13
non je ne recois pas de mails
Répondre à webmaster-debutant

7


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
original-h, le jeudi 7 août 2008 à 09:26:25
à tu déja paramétré ton php.ini pour envoyer des emails avec la fonction mail ?
Répondre à original-h

8


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
zzzer, le jeudi 7 août 2008 à 09:34:25
Normalement cette fonction est activée par défaut !

N'oubliez pas de marquer la discussion comme résolue dès que­ c'est le cas ! -> En haut de la page, Statut: Résolu
Attention aussi à bien respecter la 6e règle de la charte : 
Rédiger les messages dans un langage clair sans abréviation, style télégraphique ou mode SMS
Répondre à zzzer

9


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
BanBan55, le jeudi 7 août 2008 à 09:36:38
tu test ton script en local ? via easyphp ?
Répondre à BanBan55

10


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
 zzzer, le jeudi 7 août 2008 à 09:39:24
Via EasyPHP, il est impossible de recevoir les mails envoyés par mail().
Je pense que c'est ce que tu voulais dire...

N'oubliez pas de marquer la discussion comme résolue dès que­ c'est le cas ! -> En haut de la page, Statut: Résolu
Attention aussi à bien respecter la 6e règle de la charte : 
Rédiger les messages dans un langage clair sans abréviation, style télégraphique ou mode SMS
Répondre à zzzer

Résultats pour Newsletter entierement en php

Anvoi du newsletter en php (Résolu) salut, j'ai fais un script qui nevoie des newsletter a des emails stockees dans ma table newsletter_abonnées, le probleme c'est que apres l'ajout d'adresse un message d'erreur apparait warning mail():smtp server response ........ www.commentcamarche.net/forum/affich-3566596-anvoi-du-newsletter-en-php
Recherche un script de news en php (Résolu) bonjour at ous je suis a la recherche d un script php pour mettre en place une newsletter sur mon site... il faudrait que je puisse en meme temps envoyé ma news sur mon site et a mes abonnées si possible par un simple mail... je m explique : un module... www.commentcamarche.net/forum/affich-2427441-recherche-un-script-de-news-en-php
[PHP] Nombre décimal / entier (Résolu) Bonjour, Comment faire pour savoir si une variable est décimale ou entiere? Existe-t-il une fonction? www.commentcamarche.net/forum/affich-5493111-php-nombre-decimal-entier

Résultats pour Newsletter entierement en php

Faire une newsletterFaire une newsletter Une newsletter est une lettre d'information envoyée périodiquement par mail à des abonnés. Composée de texte, illustrations, liens renvoyant vers votre site, son contenu peut être par exemple une sélection de produits, un... www.commentcamarche.net/faq/sujet-9435-faire-une-newsletter
[PHP] Upload de fichiersLe langage PHP permet de gérer des fichiers envoyés (uploadés) grâce à un formulaire HTML. Formulaire d'envoi de fichiers Configuration de PHP pour permettre l'upload Récupération du fichier avec PHP Formulaire d'envoi de fichiers La... www.commentcamarche.net/faq/sujet-889-php-upload-de-fichiers
[PHP] Parse error, unexpected T_STRING, expecting ',' or ';'Cette erreur, fréquente, se produit notamment lorsqu'un guillemet est présent dans une chaîne délimitée par ce même type de guillemets, par exemple : www.commentcamarche.net/faq/sujet-869-php-parse-error-unexpected-t-string-expecting-or

Résultats pour Newsletter entierement en php

Tester si un string est un entier (Résolu)Bonjour, je suis opposé à un petit problème en java: Je voudrais tester si une chaine de caractères est un entier. Il existe bien par exemple isNaN en javascript ou encore isdigitt en C, mais existe-t-il une fonction similaire en Java ?? J'ai... www.commentcamarche.net/forum/affich-1989308-tester-si-un-string-est-un-entier
Décimale en php (Résolu)Bonjour à tous, Je post pour demander si il existe une manière de me donner des nombre avec deux decimales obligatoire (qu'il y en ai plus, ou pas du tout). exemples : 212 => 212.00 13.6589 => 13.66 ... Je suis en php, merci à tous. www.commentcamarche.net/forum/affich-4656727-decimale-en-php
Java-déclaration de variable (Résolu)Bonjour, J'apprends à développer sous jaja et j'ai besoin de déclarer une variable qui soit exclusivement numérique, et de surcroit entiere. Elle ne doit pas prendre la valeur d'une lettre. Est-il possible de déclarer une variable de ce... www.commentcamarche.net/forum/affich-1639403-java-declaration-de-variable

Résultats pour Newsletter entierement en php

Télécharger PHP EditPHPEdit est un environnement de développement intégré (IDE) sous Windows pour le langage PHP. Il offre un grand nombre de fonctionnalités permettant de développer plus efficacement : Coloration syntaxique Auto-complétion des... www.commentcamarche.net/telecharger/telecharger-62-php-edit

Résultats pour Newsletter entierement en php

PHP - Les fichiersLa gestion des fichiers avec PHP Avec PHP, la création ou la lecture de fichiers est, une fois de plus, assez simple. Il existe une multitude de fonctions dédiées à l'utilisation des fichiers. La communication entre le script PHP et le fichier... www.commentcamarche.net/contents/php/phpfich.php3
PHP - Introduction à la programmation avec PHPQu'est-ce que PHP? PHP est un langage interprété (un langage de script) exécuté du côté serveur (comme les scripts CGI, ASP, ...) et non du côté client (un script écrit en Javascript ou une applet Java s'exécute sur votre ordinateur...). La... www.commentcamarche.net/contents/php/phpintro.php3
PHP - Récupération de donnéesPHP rend très simple la récupération de données envoyées par l'intermédiaire de formulaires HTML. Création d'un formulaire Grâce à la balise FORM du langage HTML, il est très simple de créer des formulaires comprenant : des champs de saisie des... www.commentcamarche.net/contents/php/phpform.php3