Orission | Salut,
J'ai finis ma newsletter y'a 20 - 25 minutes et depuis je cherche des éventuelle faille mais j'en ai pas trouvée
Donc si vous pouviez regarder sa serai bien cool
Code :
- <?php
- include('a.php');
- if(isset($_GET['action']))
- {
- if($_GET['action'] == 'verif')
- {
- if(empty($_POST['email']))
- {
- echo '<p class="erreur">Le champ <strong>Email</strong> est manquant, veuillez recommencer.<br /><br />:: <a href="newsletter.php">Retour</a> ::</p>';
- }
- else
- {
- if($_POST['type'] == 'Inscription')
- {
- $q_email_inscription=mysql_query('SELECT COUNT(email) AS nb_email FROM newsletter WHERE email="'.$email.'"');
- $r_email_inscription=mysql_fetch_array($q_email_inscription);
- if($r_email_inscription['nb_email'] >= 1)
- {
- echo '<p class="erreur">L\'email <strong>'.$email.'</strong> est déjà enregistré dans la base de données.<br /><br />:: <a href="newsletter.php">Retour</a> ::</p>';
- }
- else
- {
- $email=htmlentities(htmlspecialchars(trim(strtolower($_POST['email']))), ENT_QUOTES);
- $cle=date('his')*date('yish')*4;
- if(!preg_match('`^[[:alnum:]]([-_.]?[[:alnum:]])*@[[:alnum:]]([-_.]?[[:alnum:]])*.([a-z]{2,4})$`',$email))
- {
- echo '<p class="erreur"><strong>'.$email.'</strong> n\'est pas un format d\'email valide.<br /><br />:: <a href="newsletter.php">Retour</a> ::</p>';
- }
- else
- {
- mysql_query("INSERT INTO newsletter VALUES('','$email','$cle','')" );
- $From = "From:eurotorrent@gmail.com\n";
- $From .= "MIME-version: 1.0\n";
- $From .= "Content-type: text/html; charset= iso-8859-1\n";
- mail($email,'Newsletter de Euro-Torrent','Bonjour,<br /><br />Vous venez de demander votre inscription à la Newsletter de <a href="http://www.euro-torrent.tk">Euro-Torrent</a>.<br /><br />Il vous faut maintenant valider l\'inscription pour être définitivement inscrit.<br /><br />Pour cela, cliquez sur le lien ci-dessous :<br /><br /><a href="http://ftptrashersite.free.fr/newsletter.php?action=validation&style=inscription&email='.$email.'&cle='.$cle.'">Validez ici</a><br /><br />OU<br /><br />http://ftptrashersite.free.fr/newsletter.php?action=validation&style=inscription&email='.$email.'&cle='.$cle.'<br /><br />Vous devez valider l\'inscription avant 7 jours.<br /><br />A bientôt sur <a href="http://www.euro-torrent.tk">Euro-Torrent</a>',$From);
- echo '<p class="erreur">L\'email <strong>'.$email.'</strong> a été correctement ajouté dans notre base de données.<br /><br />Vous allez recevoir un email pour valider votre inscription.<br /><br />Cela permet d\'éviter l\'inscription de faux emails et de s\'assurer que cette adresse email vous appartient.<br /><br />Si vous ne validez pas votre inscription avant 7 jours, il faudra recommencer.<br /><br />:: <a href="newsletter.php">Retour</a> ::</p>';
- }
- }
- }
- elseif($_POST['type'] == 'Desinscription')
- {
- $email=htmlentities(htmlspecialchars(trim(strtolower($_POST['email']))), ENT_QUOTES);
- if(!preg_match('`^[[:alnum:]]([-_.]?[[:alnum:]])*@[[:alnum:]]([-_.]?[[:alnum:]])*.([a-z]{2,4})$`',$email))
- {
- echo '<p class="erreur"><strong>'.$email.'</strong> n\'est pas un format d\'email valide.<br /><br />:: <a href="newsletter.php">Retour</a> ::</p>';
- }
- else
- {
- $q_verif_email=mysql_query('SELECT COUNT(email) AS nb_email FROM newsletter WHERE email="'.$email.'"');
- $r_verif_email=mysql_fetch_array($q_verif_email);
- if($r_verif_email['nb_email'] == 0)
- {
- echo '<p class="erreur">L\'email <strong>'.$email.'</strong> est déjà inscrit dans notre base de donnée.<br /><br />:: <a href="newsletter.php">Retour</a> ::</p>';
- }
- else
- {
- $q_cle_desinscription=mysql_query('SELECT cle FROM newsletter WHERE email="'.$email.'"');
- $r_cle_desinscription=mysql_fetch_array($q_cle_desinscription);
- $From = "From:eurotorrent@gmail.com\n";
- $From .= "MIME-version: 1.0\n";
- $From .= "Content-type: text/html; charset= iso-8859-1\n";
- mail($email,'Newsletter de Euro-Torrent','Bonjour,<br /><br />Vous venez de demander votre désinscription à la Newsletter de <a href="http://www.euro-torrent.tk">Euro-Torrent</a>.<br /><br />Il vous faut maintenant valider la désinscription pour être définitivement retiré de notre base de données.<br /><br />Pour cela, cliquez sur le lien ci-dessous :<br /><br /><a href="http://ftptrashersite.free.fr/newsletter.php?action=validation&style=desinscription&email='.$email.'&cle='.$r_cle_desinscription['cle'].'">Validez ici</a><br /><br />OU<br /><br />http://ftptrashersite.free.fr/newsletter.php?action=validation&style=desinscription&email='.$email.'&cle='.$r_cle_desinscription['cle'].'<br /><br />A bientôt sur <a href="http://www.euro-torrent.tk">Euro-Torrent</a>',$From);
- echo '<p class="erreur">L\'email <strong>'.$email.'</strong> va être correctement effacé de notre base de données.<br /><br />Vous allez recevoir un email pour valider votre désinscription.<br /><br />Cela permet d\'éviter les fausses désinscription envers les visiteurs et afin de confirmer l\'authenticité de votre requête.<br /><br />:: <a href="newsletter.php">Retour</a> ::</p>';
- }
- }
- }
- else
- {
- echo '<script type="text/javascript">window.location="http://www.euro-torrent.tk";</script>';
- }
- }
- }
- elseif($_GET['action'] == 'validation')
- {
- if(isset($_GET['style']))
- {
- if($_GET['style'] == 'inscription')
- {
- $email=htmlentities(htmlspecialchars(trim(strtolower($_GET['email']))), ENT_QUOTES);
- $cle=htmlentities(htmlspecialchars(trim(strtolower($_GET['cle']*1))), ENT_QUOTES);
- $q_email_validation_inscription=mysql_query('SELECT COUNT(email) AS email_validation FROM newsletter WHERE email="'.$email.'"');
- $r_email_validation_inscription=mysql_fetch_array($q_email_validation_inscription);
- if($r_email_validation_inscription['email_validation'] == 1)
- {
- $q_cle_validation_inscription=mysql_query('SELECT COUNT(cle) AS cle FROM newsletter WHERE cle="'.$cle.'"');
- $r_cle_validation_inscription=mysql_fetch_array($q_cle_validation_inscription);
- if($r_cle_validation_inscription['cle'] == 1)
- {
- mysql_query('UPDATE newsletter SET validation=1 WHERE email="'.$email.'" AND cle="'.$cle.'"');
- echo '<p class="erreur">Votre email <strong>'.$email.'</strong> a bien été validé.<br /><br />:: <a href="newsletter.php">Retour</a> ::</p>';
- }
- else
- {
- echo '<p class="erreur">Votre clé de validation <strong>'.$key.'</strong> est incorrect.<br /><br />:: <a href="newsletter.php">Retour</a> ::</p>';
- }
- }
- else
- {
- echo '<p class="erreur">Votre email de validation <strong>'.$email.'</strong> est incorrect.<br /><br />:: <a href="newsletter.php">Retour</a> ::</p>';
- }
- }
- elseif($_GET['style'] == 'desinscription')
- {
- $email=htmlentities(htmlspecialchars(trim(strtolower($_GET['email']))), ENT_QUOTES);
- $cle=htmlentities(htmlspecialchars(trim(strtolower($_GET['cle']*1))), ENT_QUOTES);
- $q_email_validation_desinscription=mysql_query('SELECT COUNT(email) AS email_validation FROM newsletter WHERE email="'.$email.'"');
- $r_email_validation_desinscription=mysql_fetch_array($q_email_validation_desinscription);
- if($r_email_validation_desinscription['email_validation'] == 1)
- {
- $q_cle_validation_desinscription=mysql_query('SELECT COUNT(cle) AS cle FROM newsletter WHERE cle="'.$cle.'"');
- $r_cle_validation_desinscription=mysql_fetch_array($q_cle_validation_desinscription);
- if($r_cle_validation_desinscription['cle'] == 1)
- {
- mysql_query('DELETE FROM newsletter WHERE email="'.$email.'" && cle="'.$cle.'"');
- echo '<p class="erreur">Votre email <strong>'.$email.'</strong> a bien été retiré de notre base de données.<br /><br />:: <a href="newsletter.php">Retour</a> ::</p>';
- }
- else
- {
- echo '<p class="erreur">Votre clé de validation <strong>'.$key.'</strong> est incorrect.<br /><br />:: <a href="newsletter.php">Retour</a> ::</p>';
- }
- }
- else
- {
- echo '<p class="erreur">L\'email <strong>'.$email.'</strong> est incorrect.<br /><br />:: <a href="newsletter.php">Retour</a> ::</p>';
- }
- }
- else
- {
- echo '<script type="text/javascript">window.location="http://www.euro-torrent.tk";</script>';
- }
- }
- else
- {
- echo '<script type="text/javascript">window.location="http://www.euro-torrent.tk";</script>';
- }
- }
- else
- {
- echo '<script type="text/javascript">window.location="http://www.euro-torrent.tk";</script>';
- }
- }
- else
- {
- $q_inscrits=mysql_query('SELECT COUNT(email) AS nb_inscrits FROM newsletter WHERE validation="1"');
- $r_inscrits=mysql_fetch_array($q_inscrits);
- ?>
- <script type="text/javascript">
- function limite(zone,max)
- {
- if(zone.value.length>=max)
- {
- zone.value=zone.value.substring(0,max);
- }
- }
- </script>
- <p>Soyez les premiers avertis des nouveautés et mises à jour du site !</p>
- <p><strong>Votre email doit être obligatoirement valide.</strong></p>
- <form action="newsletter.php?action=verif" method="post">
- <p class="center">
- <input type="text" size="30" name="email" oncleup="limite(this,255);" oncledown="limite(this,255);" /> <select name="type"><option>Inscription</option><option>Desinscription</option></select><br /><br />
- <input type="submit" value="Valider" />
- </p>
- </form>
- <p class="center"><strong><?=nbr($r_inscrits['nb_inscrits']); ?></strong> inscrits</p>
- <?php
- }
- include('b.php');
- ?>
|
merci à vous ! ---------------
“ Un avis d’un homme non avisé ne doit jamais être pris en compte par un homme avisé. ” Jean Plancher, 1810, Taverne « Chez Bonaparte »
|