[Php] Urgent ! : Newsletter
Fermé
WaKaaN
-
19 janv. 2005 à 17:17
dugenou Messages postés 6087 Date d'inscription mercredi 19 janvier 2005 Statut Contributeur Dernière intervention 30 juillet 2021 - 20 janv. 2005 à 18:10
dugenou Messages postés 6087 Date d'inscription mercredi 19 janvier 2005 Statut Contributeur Dernière intervention 30 juillet 2021 - 20 janv. 2005 à 18:10
A voir également:
- [Php] Urgent ! : Newsletter
- Easy php - Télécharger - Divers Web & Internet
- \R php ✓ - Forum PHP
- Br php ✓ - Forum PHP
- Expert php - Télécharger - Langages
- Php echo image ✓ - Forum PHP
4 réponses
dugenou
Messages postés
6087
Date d'inscription
mercredi 19 janvier 2005
Statut
Contributeur
Dernière intervention
30 juillet 2021
1 451
19 janv. 2005 à 18:22
19 janv. 2005 à 18:22
Bonsoir,
Si ça peut t'aider, voici la partie du script de la newsletter de mon site concernant cette vérification :
//on vérifie que l'adresse e-mail entré n'est pas déjà enregistrée dans la liste de diffusion.
$fp = fopen("news/result.lst","r");
while (!feof($fp)){$ligne = fgets($fp,4096);$email2 = explode("|",$ligne);}
fclose($fp);
for($x=0;$x <= sizeof($email2)-1;$x++)
{
if ($email2[$x] == $email){$test=0;$resultat = "<b>Erreur ! Votre adresse email est déjà enregistrée</b>";$pass2=1;}
}
Le script complet se trouve à cette adresse :
http://www.phpscripts-fr.net/recherche.php?recherche=my+newsletter+v1.0a&c=1&rub%5B%5D=script
Bon courage.
Si ça peut t'aider, voici la partie du script de la newsletter de mon site concernant cette vérification :
//on vérifie que l'adresse e-mail entré n'est pas déjà enregistrée dans la liste de diffusion.
$fp = fopen("news/result.lst","r");
while (!feof($fp)){$ligne = fgets($fp,4096);$email2 = explode("|",$ligne);}
fclose($fp);
for($x=0;$x <= sizeof($email2)-1;$x++)
{
if ($email2[$x] == $email){$test=0;$resultat = "<b>Erreur ! Votre adresse email est déjà enregistrée</b>";$pass2=1;}
}
Le script complet se trouve à cette adresse :
http://www.phpscripts-fr.net/recherche.php?recherche=my+newsletter+v1.0a&c=1&rub%5B%5D=script
Bon courage.
pourrais-tu mexpliker ligne par ligne ce que ca fait stp pcq ca marche po et puis moi je voudrais un fichier texte ...
thx
thx
dugenou
Messages postés
6087
Date d'inscription
mercredi 19 janvier 2005
Statut
Contributeur
Dernière intervention
30 juillet 2021
1 451
20 janv. 2005 à 18:10
20 janv. 2005 à 18:10
Bonjour,
Le script n'est pas de moi, je suis seulement un utilisateur satisfait.
<a href = 'http://phortail.free.fr/' target='_blank' rel='nofollow'>http://phortail.free.fr/
Il fonctionne avec des fichiers texte même si l'extension n'est pas txt.
Visiblement, la partie du script (lignes 23 à 29) que je t'ai donnée recherche dans le fichier texte (result.lst) qui contient les adresses email des abonnés, si l'adresse proposée ($email) n'est pas déjà présente :
ligne 24 il ouvre le fichier texte et le lit
ligne 25 il recherche dans le fichier texte la présence éventuelle de l'adresse email proposée et enregistre le résultat dans la variable $email2
ligne 26 il referme le fichier texte
lignes 27 à 29 il compare l'adresse contenue au résultat de ses recherche : if ($email2[$x] == $email) et le cas échéant affiche un message, sinon il passe à l'étape suivante.
J'espère avoir répondu à ta question avec mes faibles connaissances en php.
Voici le script complet pour ceux que ça intéresse :
<html>
<head>
<title>Document sans-titre</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<script language="php">
if($pass2 !=1){$resultat="<b><font size='1'>Inscrivez-vous pour être informé des mises à jour de Phortail.<br><br>Votre adresse email :</font></b>";}
$test = 1;
if (strlen($email) >=1)
{
$email = str_replace("|","",$email);
//on vérifie le format de l'adresse e-mail et que les champs ne sont pas vide
$emailverif = $email;
$emailt1 = explode("@",$emailverif);
$emailt2 = explode(".",$emailverif);
$emailt3 = explode(" ",$emailverif);
$emailt4 = explode("@",$emailt2[0]);
if(($email) && (sizeof ($emailt1) == 2) && (sizeof ($emailt2) == 2) && (sizeof ($emailt3) == 1) && (sizeof ($emailt4) == 2)){}
else{$test = 0;$resultat = "<b>Erreur ! Votre email a été mal formatée</b>";$pass2=1;}
//on vérifie que l'adresse e-mail entré n'est pas déjà enregistrée dans la liste de diffusion.
$fp = fopen("news/result.lst","r");
while (!feof($fp)){$ligne = fgets($fp,4096);$email2 = explode("|",$ligne);}
fclose($fp);
for($x=0;$x <= sizeof($email2)-1;$x++)
{
if ($email2[$x] == $email){$test=0;$resultat = "<b>Erreur ! Votre adresse email est déjà enregistrée</b>";$pass2=1;}
}
if($test== 1 )
{
$fp = fopen("news/result.lst","a");fputs($fp,"$email|");fclose($fp);
$resultat = "<b>Votre inscription a bien été validée</b>";$pass2=1;
}
}
</script>
<div align="center">
<form method="post" action="index.php?pass2=$pass2">
<table width="35%" border="0" height="58">
<tr>
<td width="90%" height="31">
<div align="center">
<p><? echo($resultat) ?></p>
<input type="text" name="email"><br><br>
<input type="submit" name="submit" value="S'inscrire">
</div>
</td>
</tr>
</table>
</form>
<p></p>
</div>
</body>
</html>
A+
Le script n'est pas de moi, je suis seulement un utilisateur satisfait.
<a href = 'http://phortail.free.fr/' target='_blank' rel='nofollow'>http://phortail.free.fr/
Il fonctionne avec des fichiers texte même si l'extension n'est pas txt.
Visiblement, la partie du script (lignes 23 à 29) que je t'ai donnée recherche dans le fichier texte (result.lst) qui contient les adresses email des abonnés, si l'adresse proposée ($email) n'est pas déjà présente :
ligne 24 il ouvre le fichier texte et le lit
ligne 25 il recherche dans le fichier texte la présence éventuelle de l'adresse email proposée et enregistre le résultat dans la variable $email2
ligne 26 il referme le fichier texte
lignes 27 à 29 il compare l'adresse contenue au résultat de ses recherche : if ($email2[$x] == $email) et le cas échéant affiche un message, sinon il passe à l'étape suivante.
J'espère avoir répondu à ta question avec mes faibles connaissances en php.
Voici le script complet pour ceux que ça intéresse :
<html>
<head>
<title>Document sans-titre</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<script language="php">
if($pass2 !=1){$resultat="<b><font size='1'>Inscrivez-vous pour être informé des mises à jour de Phortail.<br><br>Votre adresse email :</font></b>";}
$test = 1;
if (strlen($email) >=1)
{
$email = str_replace("|","",$email);
//on vérifie le format de l'adresse e-mail et que les champs ne sont pas vide
$emailverif = $email;
$emailt1 = explode("@",$emailverif);
$emailt2 = explode(".",$emailverif);
$emailt3 = explode(" ",$emailverif);
$emailt4 = explode("@",$emailt2[0]);
if(($email) && (sizeof ($emailt1) == 2) && (sizeof ($emailt2) == 2) && (sizeof ($emailt3) == 1) && (sizeof ($emailt4) == 2)){}
else{$test = 0;$resultat = "<b>Erreur ! Votre email a été mal formatée</b>";$pass2=1;}
//on vérifie que l'adresse e-mail entré n'est pas déjà enregistrée dans la liste de diffusion.
$fp = fopen("news/result.lst","r");
while (!feof($fp)){$ligne = fgets($fp,4096);$email2 = explode("|",$ligne);}
fclose($fp);
for($x=0;$x <= sizeof($email2)-1;$x++)
{
if ($email2[$x] == $email){$test=0;$resultat = "<b>Erreur ! Votre adresse email est déjà enregistrée</b>";$pass2=1;}
}
if($test== 1 )
{
$fp = fopen("news/result.lst","a");fputs($fp,"$email|");fclose($fp);
$resultat = "<b>Votre inscription a bien été validée</b>";$pass2=1;
}
}
</script>
<div align="center">
<form method="post" action="index.php?pass2=$pass2">
<table width="35%" border="0" height="58">
<tr>
<td width="90%" height="31">
<div align="center">
<p><? echo($resultat) ?></p>
<input type="text" name="email"><br><br>
<input type="submit" name="submit" value="S'inscrire">
</div>
</td>
</tr>
</table>
</form>
<p></p>
</div>
</body>
</html>
A+