Support et annonces PhpMyNewsLetter.
Vous n'êtes pas identifié(e).
Il y aura un mail pour tous les inscrits du forum.
OK OK !
Alors non, va dans configuration de la newsletter, le premier champ est "NOM DE LA NEWSLETTER", et là tu peux le modifier, puis enregistrer les réglages.
Mais surtout ne pas hésiter à demander !
Quelques précisions ?
Ou des exemples ?
Avec plaisir.
Je marque le sujet résolu.
Alors un petit effort, et ça roule !
ouep c'est drôlement chouette de votre part
Je parlais surtout du site 
Mais de rien !
Bon usage, et surtout ne pas hésiter à revenir !
Sinon, je me suis inscrit, et réinscrit, ça fonctionne très bien ! En 2 coups de cuillère à pot, c'est presque fini... Pas mal non ?

alors ca fonctionne mais si je peux me permettre ca m'enlève une partie du site coté droit et footer !
C'est pour cela que c'est long !
En fait, il faut enlever les balises de style de la portion de code que j'ai donnée, et l'intégrer proprement dans l'environnement existant...
Et je suis bien passé !
Capture écran par mail
J'ai été trop vite, il faut enlever le session_start(); de la ligne 2, juste après le <?php
Sur le lien à suivre dans la newsletter
Non, dans index.php, le fichier d'accueil du portail.
Pour le action du formulaire, il faut aussi ne rien mettre, et donc avoir :
<form action='' method='post'>
<input type='text' name='email_addr' value='' size='30'>
<input type='hidden' name='list_id' value='1'>
<input type='hidden' name='op' value='join'>
<input type='submit' value='souscrire'>
</form>et donc supprimer le script appelé... Ça va pas être de tout repos...
Sinon, et pour répondre au problème initial, la ligne 28 est à corriger par :
$unsubLink = "<br /><div align='center' style='padding-top:10px;font-size:10pt;font-family:arial,helvetica,sans-serif;padding-bottom:10px;color:#878e83;'><hr noshade='' color='#D4D4D4' width='90%' size='1'>Je ne souhaite plus recevoir la newsletter : <a href='" . $row_config_globale['base_url'] . $row_config_globale['path'] . "subscription.php?i=$i&list_id=$l&op=leave&email_addr=$e&h=$h' style='' target='_blank'>désinscription / unsubscribe</a><br /><a href='http://www.phpmynewsletter.com/' style='' target='_blank'>Phpmynewsletter 2.0</a></div></body></html>";Re ouh là là !!!
J'ai cliqué et j'ai un magnifique :
This site is protected by CrawlProtect !!!
Your visit has been blocked.
If you think that this shouldn't have been the case, please contact the webmaster.
Pas bon du tout ! Un prospect qui reçoit ton mail, clique, et finalement part, et se désinscrit ! A corriger au plus vite.
Sinon, dans l'entête du message, il est écrit comme expéditeur : Admin... Un mail se personnalise, c'est urgent de corriger tout celà...
Ouch... Spam !
Je l'ai, je regarde
Je cherche et je me rends compte que je ne trouve pas ce mail, tu peux me le renvoyer STP ?
Voilà qui est fait.
Je n'ai pas le code source de la page index, mais pour inclure la gestion du code d'inscription, ça va être un peu compliqué, et ne rentre pas vraiment dans mes attributions ici, mais en gros :
Tout le code :
<?php
session_start();
include("_loader.php");
include("include/lib/class.phpmailer.php");
if (!function_exists('iconv') && function_exists('libiconv')) {
function iconv($input_encoding, $output_encoding, $string) {
return libiconv($input_encoding, $output_encoding, $string);
}
}
if (!function_exists('iconv') && !function_exists('libiconv')) {
include_once("include/lib/ConvertCharset.class.php");
function iconv($input_encoding, $output_encoding, $string) {
$converter = new ConvertCharset();
return $converter->Convert($string, $input_encoding, $output_encoding);
}
}
$cnx->query("SET NAMES UTF8");
$row_config_globale = $cnx->SqlRow("SELECT * FROM $table_global_config");
include("include/lang/" . $row_config_globale['language'] . ".php");
$list_id = (!empty($_POST['list_id']) ? $_POST['list_id'] : "");
$list_id = (empty($list_id) && !empty($_GET['list_id']) ? $_GET['list_id'] : $list_id);
$email_addr = (!empty($_POST['email_addr']) ? $_POST['email_addr'] : "");
$email_addr = (empty($email_addr) && !empty($_GET['email_addr']) ? $_GET['email_addr'] : $email_addr);
$op = (!empty($_POST['op']) ? $_POST['op'] : "");
$op = (empty($op) && !empty($_GET['op']) ? $_GET['op'] : $op);
$hash = (!empty($_POST['hash']) ? $_POST['hash'] : "");
$hash = (empty($hash) && !empty($_GET['hash']) ? $_GET['hash'] : $hash);
$i = (!empty($_POST['i']) ? $_POST['i'] : "");
$i = (empty($i) && !empty($_GET['i']) ? $_GET['i'] : "");
$h = (!empty($_POST['h']) ? $_POST['h'] : "");
$h = (empty($h) && !empty($_GET['h']) ? $_GET['h'] : "");
if ($op == "leave" && !$row_config_globale['unsub_validation']) {
$op = "leave_direct";
} else if ($op == "leave_direct" && $row_config_globale['unsub_validation']) {
$op = "leave";
} else if ($op == "join" && !$row_config_globale['sub_validation']) {
$op = "join_direct";
} else if ($op == "join_direct" && $row_config_globale['sub_validation']) {
$op = "join";
}
?>
<!DOCTYPE HTML>
<html lang="fr">
<head>
<meta charset="utf-8" />
<title><?=translate("NEWSLETTER_TITLE");?></title>
<link rel="stylesheet" href="css/layout.css" type="text/css" media="screen" />
<!--[if lte IE 8]>
<link rel="stylesheet" href="css/ie.css" type="text/css" media="screen" />
<script src="js/html5shiv.js"></script><![endif]-->
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<script>!window.jQuery && document.write(unescape('%3Cscript src="js/jquery.min.js"%3E%3C/script%3E'))</script>
</head>
<body>
<section id="main" class="column">
<article class="module width_full">
<?php
if (isset($list_id) && !empty($list_id) && isValidNewsletter($cnx, $row_config_globale['table_listsconfig'], $list_id) && isset($email_addr)) {
if (!validEmailAddress($email_addr)) {
echo '<header><h3>'.translate("SUBSCRIPTION_TITLE").'</h3></header>';
echo "<h4 class='alert_error'>" . translate("EMAIL_ADDRESS_NOT_VALID") . "</div>";
exit();
}
switch ($op) {
case "join":
echo '<header><h3>'.translate("SUBSCRIPTION_TITLE").'</h3></header>';
$c = (empty($c) && !empty($_POST['c']) ? $_POST['c'] : "");
if (empty($c)||($_POST['c']!=$_SESSION['c'])) {
$_SESSION['new_sub']=$email_addr;
echo '<form method="post" action="">
<div class="module_content">
<fieldset>
<label>Confirmer votre inscription en saisissant le code ci-dessous :</label>
<label><img src="c.php" /></label>
<input type="text" name="c" value="" />
<input type="hidden" name="email_addr" value="'.$email_addr.'" />
<input type="hidden" name="list_id" value="'.$list_id.'" />
<input type="hidden" name="op" value="join" />
</fieldset>
</div>
<footer>
<div class="submit_link">
<input type="submit" value="OK">
</div>
</footer>
</form>';
} elseif ($_POST['c']==$_SESSION['c']) {
if ($row_config_globale['mod_sub']=="0") {
$add = addSubscriberTemp($cnx, $row_config_globale['table_email'], $row_config_globale['table_temp'], $list_id, $email_addr);
$news = getConfig($cnx, $list_id, $row_config_globale['table_listsconfig']);
if (strlen($add) > 3) {
$body = $news['subscription_body'];
$body .= "\n\n" . translate("SUBSCRIPTION_MAIL_BODY") . ":\n";
$body .= "<a href='".$row_config_globale['base_url'] . $row_config_globale['path'] . "subscription.php?op=confirm_join&email_addr=" . urlencode($email_addr) . "&hash=$add&list_id=$list_id'>Je m'abonne</a>";
$subj = (strtoupper($row_config_globale['charset']) == "UTF-8" ? $news['subscription_subject'] : iconv("UTF-8", $row_config_globale['charset'], $news['subscription_subject']));
$body = (strtoupper($row_config_globale['charset']) == "UTF-8" ? $body : iconv("UTF-8", $row_config_globale['charset'], $body));
$mail = sendEmail($row_config_globale['sending_method'], $email_addr, $news['from_addr'], $news['from_name'], $subj, $body, $row_config_globale['smtp_auth'], $row_config_globale['smtp_host'], $row_config_globale['smtp_login'], $row_config_globale['smtp_pass'], $row_config_globale['charset']);
echo "<h4 class='alert_success'>" . translate("SUBSCRIPTION_SEND_CONFIRM_MESSAGE") . "</h4>";
} elseif ($add ==0)
echo "<h4 class='alert_error'>" . translate("SUBSCRIPTION_ALREADY_SUBSCRIBER") . "</h4>";
else
echo "<h4 class='alert_error'>" . translate("ERROR_SQL2") . "</h4>";
} elseif ($row_config_globale['mod_sub']=="1") {
$add = addSubscriberMod($cnx, $row_config_globale['table_email'], $row_config_globale['table_sub'], $list_id, $email_addr);
if ($add)
echo "<h4 class='alert_success'>" . translate("Subscription requested recorded, waiting for moderation") . "</h4>";
else if ($add == 0)
echo "<h4 class='alert_error'>" . translate("You are already a subscriber") . "</h4>";
else
echo "<h4 class='alert_error'>" . translate("Error while SQL query") . "</h4>";
}
echo '<h4 class="alert_info">Vous pouvez fermer cette fenêtre</h4>';
echo '<div class="spacer"></div>';
}
break;
case "leave":
echo '<header><h3>'.translate("SUBSCRIPTION_TITLE").'</h3></header>';
$news = getConfig($cnx, $list_id, $row_config_globale['table_listsconfig']);
$hash = isValidSubscriber($cnx, $row_config_globale['table_email'], $list_id, $email_addr);
if ($hash==$h&&!empty($hash)&&strlen($hash)==32) {
$body = $news['quit_body'];
$body .= "\n\n" . translate("UNSUBSCRIPTION_MAIL_BODY") . " :\n";
$body .= "<a href='".$row_config_globale['base_url'] . $row_config_globale['path'] . "subscription.php?op=confirm_leave&email_addr=" . urlencode($email_addr) . "&hash=$hash&list_id=$list_id&i=$i'>Je me désabonne</a>";
$subj = (strtoupper($row_config_globale['charset']) == "UTF-8" ? $news['quit_subject'] : iconv("UTF-8", $row_config_globale['charset'], $news['quit_subject']));
$body = (strtoupper($row_config_globale['charset']) == "UTF-8" ? $body : iconv("UTF-8", $row_config_globale['charset'], $body));
if (sendEmail($row_config_globale['sending_method'],$email_addr,$news['from_addr'],$news['from_name'],$subj,
$body,$row_config_globale['smtp_auth'],$row_config_globale['smtp_host'],$row_config_globale['smtp_login'],
$row_config_globale['smtp_pass'],$row_config_globale['charset'])){
echo "<h4 class='alert_success'>" . translate("SUBSCRIPTION_SEND_CONFIRM_MESSAGE") . "</h4>";
} else {
echo "<h4 class='alert_error'>" . translate("ERROR_SENDING_CONFIRM_MAIL") . "</h4>";
}
} else {
echo "<h4 class='alert_error'>" . translate("You are not a subscriber of this newsletter") . "</h4>";
}
echo '<h4 class="alert_info">Vous pouvez fermer cette fenêtre</h4>';
echo '<div class="spacer"></div>';
break;
case "confirm_join":
echo '<header><h3>'.translate("SUBSCRIPTION_TITLE").'</h3></header>';
$add = addSubscriber($cnx, $row_config_globale['table_email'], $row_config_globale['table_temp'], $list_id, $email_addr, $hash);
if ($add==false) {
echo "<h4 class='alert_error'>" . translate("SUBSCRIPTION_UNKNOWN_EMAIL_ADDRESS") . "! </h4>";
} elseif ($add==true) {
$news = getConfig($cnx, $list_id, $row_config_globale['table_listsconfig']);
$body = $news['welcome_body'];
$body .= "\n\n" . translate("SUBSCRIPTION_UNSUBSCRIBE_LINK") . ":\n";
$body .= "<a href='".$row_config_globale['base_url'] . $row_config_globale['path'] . "subscription.php?op=confirm_leave&email_addr=" . urlencode($email_addr) . "&hash=$hash&list_id=$list_id'>Je confirme mon désabonnement</a>";
$subj = (strtoupper($row_config_globale['charset']) == "UTF-8" ? $news['welcome_subject'] : iconv("UTF-8", $row_config_globale['charset'], $news['welcome_subject']));
$body = (strtoupper($row_config_globale['charset']) == "UTF-8" ? $body : iconv("UTF-8", $row_config_globale['charset'], $body));
$mail = sendEmail($row_config_globale['sending_method'], $email_addr, $news['from_addr'], $news['from_name'], $subj, $body, $row_config_globale['smtp_auth'], $row_config_globale['smtp_host'], $row_config_globale['smtp_login'], $row_config_globale['smtp_pass'], $row_config_globale['charset']);
echo "<h4 class='alert_success'>" . translate("SUBSCRIPTION_FINISHED") . "</h4>";
} else {
echo "<h4 class='alert_error'>" . translate("ERROR_UNKNOWN") . "</h4>";
}
echo '<h4 class="alert_info">Vous pouvez fermer cette fenêtre</h4>';
echo '<div class="spacer"></div>';
break;
case "confirm_leave":
echo '<header><h3>'.translate("SUBSCRIPTION_TITLE").'</h3></header>';
$rm = removeSubscriber($cnx, $row_config_globale['table_email'], $row_config_globale['table_send'], $list_id, $email_addr, $hash, $i);
if ($rm == 1) {
echo "<h4 class='alert_success'>" . translate("UNSUBSCRIPTION_FINISHED") . ".</h4>";
} else if ($rm == -1) {
echo "<h4 class='alert_error'>" . translate("UNSUBSCRIPTION_UNKNOWN_EMAIL_ADDRESS") . "</h4>";
} else {
echo "<h4 class='alert_error'>" . translate("ERROR_UNKNOWN") . "</h4>";
}
echo '<h4 class="alert_info">Vous pouvez fermer cette fenêtre</h4>';
echo '<div class="spacer"></div>';
break;
case "join_direct":
echo '<header><h3>'.translate("SUBSCRIPTION_TITLE").'</h3></header>';
if (!$row_config_globale['sub_validation']) {
$add = addSubscriberDirect($cnx, $row_config_globale['table_email'], $list_id, $email_addr);
if($add){
$news = getConfig($cnx, $list_id, $row_config_globale['table_listsconfig']);
$body = $news['welcome_body'];
$body .= "\n\n" . translate("UNSUBSCRIPTION_MAIL_BODY") . ":\n";
$body .= "<a href='".$row_config_globale['base_url'] . $row_config_globale['path'] . "subscription.php?op=confirm_leave&email_addr=" . urlencode($email_addr) . "&hash=$add&list_id=$list_id'>Je me désabonne</a>";
$subj = (strtoupper($row_config_globale['charset']) == "UTF-8" ? $news['welcome_subject'] : iconv("UTF-8", $row_config_globale['charset'], $news['welcome_subject']));
$body = (strtoupper($row_config_globale['charset']) == "UTF-8" ? $body : iconv("UTF-8", $row_config_globale['charset'], $body));
$mail = sendEmail($row_config_globale['sending_method'],$email_addr,$news['from_addr'], $news['from_name'], $subj, $body, $row_config_globale['smtp_auth'], $row_config_globale['smtp_host'], $row_config_globale['smtp_login'], $row_config_globale['smtp_pass'], $row_config_globale['charset']);
echo "<h4 class='alert_success'>" . translate("SUBSCRIPTION_FINISHED") . "</h4>";
} else {
echo "<h4 class='alert_error'>" . translate("SUBSCRIPTION_ALREADY_SUBSCRIBER") . "</h4>";
}
}
echo '<h4 class="alert_info">Vous pouvez fermer cette fenêtre</h4>';
echo '<div class="spacer"></div>';
break;
case "leave_direct":
echo '<header><h3>'.translate("UNSUBSCRIPTION_TITLE").'</h3></header>';
if (!$row_config_globale['unsub_validation']) {
$rm = removeSubscriberDirect($cnx, $row_config_globale['table_email'], $list_id, $email_addr);
if ($rm) {
echo "<h4 class='alert_success'>" . translate("UNSUBSCRIPTION_FINISHED") . ".</h4>";
} else if ($rm == -1) {
echo "<h4 class='alert_error'>" . translate("UNSUBSCRIPTION_UNKNOWN_EMAIL_ADDRESS") . "</h4>";
} else {
echo "<h4 class='alert_error'>" . translate("ERROR_UNKNOWN") . "</h4>";
}
}
echo '<h4 class="alert_info">Vous pouvez fermer cette fenêtre</h4>';
echo '<div class="spacer"></div>';
break;
default:
echo '<h4 class="alert_info">Vous pouvez fermer cette fenêtre</h4>';
echo '<div class="spacer"></div>';
break;
}
}
?>
</article>
</section>
</body>
</html>va être à adapter à peu près comme cela :
<?php
session_start();
include("mynewsletter/_loader.php");
include("mynewsletter/include/lib/class.phpmailer.php");
if (!function_exists('iconv') && function_exists('libiconv')) {
function iconv($input_encoding, $output_encoding, $string) {
return libiconv($input_encoding, $output_encoding, $string);
}
}
if (!function_exists('iconv') && !function_exists('libiconv')) {
include_once("mynewsletter/include/lib/ConvertCharset.class.php");
function iconv($input_encoding, $output_encoding, $string) {
$converter = new ConvertCharset();
return $converter->Convert($string, $input_encoding, $output_encoding);
}
}
$cnx->query("SET NAMES UTF8");
$row_config_globale = $cnx->SqlRow("SELECT * FROM $table_global_config");
include("mynewsletter/include/lang/" . $row_config_globale['language'] . ".php");
$list_id = (!empty($_POST['list_id']) ? $_POST['list_id'] : "");
$list_id = (empty($list_id) && !empty($_GET['list_id']) ? $_GET['list_id'] : $list_id);
$email_addr = (!empty($_POST['email_addr']) ? $_POST['email_addr'] : "");
$email_addr = (empty($email_addr) && !empty($_GET['email_addr']) ? $_GET['email_addr'] : $email_addr);
$op = (!empty($_POST['op']) ? $_POST['op'] : "");
$op = (empty($op) && !empty($_GET['op']) ? $_GET['op'] : $op);
$hash = (!empty($_POST['hash']) ? $_POST['hash'] : "");
$hash = (empty($hash) && !empty($_GET['hash']) ? $_GET['hash'] : $hash);
$i = (!empty($_POST['i']) ? $_POST['i'] : "");
$i = (empty($i) && !empty($_GET['i']) ? $_GET['i'] : "");
$h = (!empty($_POST['h']) ? $_POST['h'] : "");
$h = (empty($h) && !empty($_GET['h']) ? $_GET['h'] : "");
if ($op == "leave" && !$row_config_globale['unsub_validation']) {
$op = "leave_direct";
} else if ($op == "leave_direct" && $row_config_globale['unsub_validation']) {
$op = "leave";
} else if ($op == "join" && !$row_config_globale['sub_validation']) {
$op = "join_direct";
} else if ($op == "join_direct" && $row_config_globale['sub_validation']) {
$op = "join";
}
?>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<section id="main" class="column">
<article class="module width_full">
<?php
if (isset($list_id) && !empty($list_id) && isValidNewsletter($cnx, $row_config_globale['table_listsconfig'], $list_id) && isset($email_addr)) {
if (!validEmailAddress($email_addr)) {
echo '<header><h3>'.translate("SUBSCRIPTION_TITLE").'</h3></header>';
echo "<h4 class='alert_error'>" . translate("EMAIL_ADDRESS_NOT_VALID") . "</div>";
exit();
}
switch ($op) {
case "join":
echo '<header><h3>'.translate("SUBSCRIPTION_TITLE").'</h3></header>';
$c = (empty($c) && !empty($_POST['c']) ? $_POST['c'] : "");
if (empty($c)||($_POST['c']!=$_SESSION['c'])) {
$_SESSION['new_sub']=$email_addr;
echo '<form method="post" action="">
<div class="module_content">
<fieldset>
<label>Confirmer votre inscription en saisissant le code ci-dessous :</label>
<label><img src="c.php" /></label>
<input type="text" name="c" value="" />
<input type="hidden" name="email_addr" value="'.$email_addr.'" />
<input type="hidden" name="list_id" value="'.$list_id.'" />
<input type="hidden" name="op" value="join" />
</fieldset>
</div>
<footer>
<div class="submit_link">
<input type="submit" value="OK">
</div>
</footer>
</form>';
} elseif ($_POST['c']==$_SESSION['c']) {
if ($row_config_globale['mod_sub']=="0") {
$add = addSubscriberTemp($cnx, $row_config_globale['table_email'], $row_config_globale['table_temp'], $list_id, $email_addr);
$news = getConfig($cnx, $list_id, $row_config_globale['table_listsconfig']);
if (strlen($add) > 3) {
$body = $news['subscription_body'];
$body .= "\n\n" . translate("SUBSCRIPTION_MAIL_BODY") . ":\n";
$body .= "<a href='".$row_config_globale['base_url'] . $row_config_globale['path'] . "subscription.php?op=confirm_join&email_addr=" . urlencode($email_addr) . "&hash=$add&list_id=$list_id'>Je m'abonne</a>";
$subj = (strtoupper($row_config_globale['charset']) == "UTF-8" ? $news['subscription_subject'] : iconv("UTF-8", $row_config_globale['charset'], $news['subscription_subject']));
$body = (strtoupper($row_config_globale['charset']) == "UTF-8" ? $body : iconv("UTF-8", $row_config_globale['charset'], $body));
$mail = sendEmail($row_config_globale['sending_method'], $email_addr, $news['from_addr'], $news['from_name'], $subj, $body, $row_config_globale['smtp_auth'], $row_config_globale['smtp_host'], $row_config_globale['smtp_login'], $row_config_globale['smtp_pass'], $row_config_globale['charset']);
echo "<h4 class='alert_success'>" . translate("SUBSCRIPTION_SEND_CONFIRM_MESSAGE") . "</h4>";
} elseif ($add ==0)
echo "<h4 class='alert_error'>" . translate("SUBSCRIPTION_ALREADY_SUBSCRIBER") . "</h4>";
else
echo "<h4 class='alert_error'>" . translate("ERROR_SQL2") . "</h4>";
} elseif ($row_config_globale['mod_sub']=="1") {
$add = addSubscriberMod($cnx, $row_config_globale['table_email'], $row_config_globale['table_sub'], $list_id, $email_addr);
if ($add)
echo "<h4 class='alert_success'>" . translate("Subscription requested recorded, waiting for moderation") . "</h4>";
else if ($add == 0)
echo "<h4 class='alert_error'>" . translate("You are already a subscriber") . "</h4>";
else
echo "<h4 class='alert_error'>" . translate("Error while SQL query") . "</h4>";
}
echo '<div class="spacer"></div>';
}
break;
case "leave":
echo '<header><h3>'.translate("SUBSCRIPTION_TITLE").'</h3></header>';
$news = getConfig($cnx, $list_id, $row_config_globale['table_listsconfig']);
$hash = isValidSubscriber($cnx, $row_config_globale['table_email'], $list_id, $email_addr);
if ($hash==$h&&!empty($hash)&&strlen($hash)==32) {
$body = $news['quit_body'];
$body .= "\n\n" . translate("UNSUBSCRIPTION_MAIL_BODY") . " :\n";
$body .= "<a href='".$row_config_globale['base_url'] . $row_config_globale['path'] . "subscription.php?op=confirm_leave&email_addr=" . urlencode($email_addr) . "&hash=$hash&list_id=$list_id&i=$i'>Je me désabonne</a>";
$subj = (strtoupper($row_config_globale['charset']) == "UTF-8" ? $news['quit_subject'] : iconv("UTF-8", $row_config_globale['charset'], $news['quit_subject']));
$body = (strtoupper($row_config_globale['charset']) == "UTF-8" ? $body : iconv("UTF-8", $row_config_globale['charset'], $body));
if (sendEmail($row_config_globale['sending_method'],$email_addr,$news['from_addr'],$news['from_name'],$subj,
$body,$row_config_globale['smtp_auth'],$row_config_globale['smtp_host'],$row_config_globale['smtp_login'],
$row_config_globale['smtp_pass'],$row_config_globale['charset'])){
echo "<h4 class='alert_success'>" . translate("SUBSCRIPTION_SEND_CONFIRM_MESSAGE") . "</h4>";
} else {
echo "<h4 class='alert_error'>" . translate("ERROR_SENDING_CONFIRM_MAIL") . "</h4>";
}
} else {
echo "<h4 class='alert_error'>" . translate("You are not a subscriber of this newsletter") . "</h4>";
}
echo '<div class="spacer"></div>';
break;
case "confirm_join":
echo '<header><h3>'.translate("SUBSCRIPTION_TITLE").'</h3></header>';
$add = addSubscriber($cnx, $row_config_globale['table_email'], $row_config_globale['table_temp'], $list_id, $email_addr, $hash);
if ($add==false) {
echo "<h4 class='alert_error'>" . translate("SUBSCRIPTION_UNKNOWN_EMAIL_ADDRESS") . "! </h4>";
} elseif ($add==true) {
$news = getConfig($cnx, $list_id, $row_config_globale['table_listsconfig']);
$body = $news['welcome_body'];
$body .= "\n\n" . translate("SUBSCRIPTION_UNSUBSCRIBE_LINK") . ":\n";
$body .= "<a href='".$row_config_globale['base_url'] . $row_config_globale['path'] . "subscription.php?op=confirm_leave&email_addr=" . urlencode($email_addr) . "&hash=$hash&list_id=$list_id'>Je confirme mon désabonnement</a>";
$subj = (strtoupper($row_config_globale['charset']) == "UTF-8" ? $news['welcome_subject'] : iconv("UTF-8", $row_config_globale['charset'], $news['welcome_subject']));
$body = (strtoupper($row_config_globale['charset']) == "UTF-8" ? $body : iconv("UTF-8", $row_config_globale['charset'], $body));
$mail = sendEmail($row_config_globale['sending_method'], $email_addr, $news['from_addr'], $news['from_name'], $subj, $body, $row_config_globale['smtp_auth'], $row_config_globale['smtp_host'], $row_config_globale['smtp_login'], $row_config_globale['smtp_pass'], $row_config_globale['charset']);
echo "<h4 class='alert_success'>" . translate("SUBSCRIPTION_FINISHED") . "</h4>";
} else {
echo "<h4 class='alert_error'>" . translate("ERROR_UNKNOWN") . "</h4>";
}
echo '<div class="spacer"></div>';
break;
case "confirm_leave":
echo '<header><h3>'.translate("SUBSCRIPTION_TITLE").'</h3></header>';
$rm = removeSubscriber($cnx, $row_config_globale['table_email'], $row_config_globale['table_send'], $list_id, $email_addr, $hash, $i);
if ($rm == 1) {
echo "<h4 class='alert_success'>" . translate("UNSUBSCRIPTION_FINISHED") . ".</h4>";
} else if ($rm == -1) {
echo "<h4 class='alert_error'>" . translate("UNSUBSCRIPTION_UNKNOWN_EMAIL_ADDRESS") . "</h4>";
} else {
echo "<h4 class='alert_error'>" . translate("ERROR_UNKNOWN") . "</h4>";
}
echo '<div class="spacer"></div>';
break;
case "join_direct":
echo '<header><h3>'.translate("SUBSCRIPTION_TITLE").'</h3></header>';
if (!$row_config_globale['sub_validation']) {
$add = addSubscriberDirect($cnx, $row_config_globale['table_email'], $list_id, $email_addr);
if($add){
$news = getConfig($cnx, $list_id, $row_config_globale['table_listsconfig']);
$body = $news['welcome_body'];
$body .= "\n\n" . translate("UNSUBSCRIPTION_MAIL_BODY") . ":\n";
$body .= "<a href='".$row_config_globale['base_url'] . $row_config_globale['path'] . "subscription.php?op=confirm_leave&email_addr=" . urlencode($email_addr) . "&hash=$add&list_id=$list_id'>Je me désabonne</a>";
$subj = (strtoupper($row_config_globale['charset']) == "UTF-8" ? $news['welcome_subject'] : iconv("UTF-8", $row_config_globale['charset'], $news['welcome_subject']));
$body = (strtoupper($row_config_globale['charset']) == "UTF-8" ? $body : iconv("UTF-8", $row_config_globale['charset'], $body));
$mail = sendEmail($row_config_globale['sending_method'],$email_addr,$news['from_addr'], $news['from_name'], $subj, $body, $row_config_globale['smtp_auth'], $row_config_globale['smtp_host'], $row_config_globale['smtp_login'], $row_config_globale['smtp_pass'], $row_config_globale['charset']);
echo "<h4 class='alert_success'>" . translate("SUBSCRIPTION_FINISHED") . "</h4>";
} else {
echo "<h4 class='alert_error'>" . translate("SUBSCRIPTION_ALREADY_SUBSCRIBER") . "</h4>";
}
}
echo '<div class="spacer"></div>';
break;
case "leave_direct":
echo '<header><h3>'.translate("UNSUBSCRIPTION_TITLE").'</h3></header>';
if (!$row_config_globale['unsub_validation']) {
$rm = removeSubscriberDirect($cnx, $row_config_globale['table_email'], $list_id, $email_addr);
if ($rm) {
echo "<h4 class='alert_success'>" . translate("UNSUBSCRIPTION_FINISHED") . ".</h4>";
} else if ($rm == -1) {
echo "<h4 class='alert_error'>" . translate("UNSUBSCRIPTION_UNKNOWN_EMAIL_ADDRESS") . "</h4>";
} else {
echo "<h4 class='alert_error'>" . translate("ERROR_UNKNOWN") . "</h4>";
}
}
echo '<div class="spacer"></div>';
break;
default:
break;
}
}
?>
</article>
</section>Mais ce n'est qu'un aperçu, car il va falloir gérer les exceptions, et ceci rentre dans un cadre très particulier d'internalisation d'un script.
Ce que je ne ferai pas, et je recommande vivement de laisser l'usage recommandé, c'est à dire, la gestion par fenêtre annexe.
Alors je me permets de déplacer la discussion dans support général, et non dans bug, dans un premier temps !
Donc dans la page index.php ?
Bonjour et bienvenue sur le forum de support,
Globalement tout dépend des hébergements.
Je dirais que être bien sur de ne pas dire de bêtises, il aurait été bon de préciser l'environnement : version de php, hébergement mutualisé apparemment, linux ?
C'est donc un bug lié à certains hébergeurs.
Pour bien faire voici un correctif à apporter dans le code :
Dans le fichier index.php (vers ligne 134) à la racine de l'installation, tu as :
$tmp_subdir = (DIRECTORY_SEPARATOR == "/" ? "./import/" : ".\\import\\");Tu vas remplacer cette ligne par :
//$tmp_subdir = (DIRECTORY_SEPARATOR == "/" ? "./import/" : ".\\import\\");
if(!is_dir("upload")){
if(mkdir("upload",0700)){
$_CONTINUE = true;
} else {
$_CONTINUE = false;
die("<div class='error'>Error while creating upload directory : '".$row_config_globale['path']."upload'.<br>Please, check permissions or create '".$row_config_globale['path']."upload' manua
lly<br>Refresh after you correct it !</div>");
}
}
$tmp_subdir="./upload/";(CF : http://www.phpmynewsletter.com/forum/vi … php?id=113, Fred pour qui ça a bien fonctionné)
Sinon : que le fichier soit issu d'excel ou n'importe quoi, il doit bien respecter la norme de 1 mail simple par ligne !
(La version 2.0.4 en cours d'écriture est déjà modifiée avec ce correctif qui est un reste de la version 0.8beta5... si célèbre !)
Tenez nous au courant
intéressant... 
Ouh là là !!!
Bon, c'est quoi ce code qui traîne au milieu de page :
<!DOCTYPE HTML>
<html lang="fr">
<head>
<meta charset="utf-8" />
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<script>!window.jQuery && document.write(unescape('%3Cscript src="js/jquery.min.js"%3E%3C/script%3E'))</script>
</head>
<body>
<section id="main">
<article>
</article>
</section>
</body>
</html>Un simple appel à jquery dans la balise head suffit :
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>Ensuite tu as mis :
target="_parent"Ça ce n'est pas bon, c'est un target="_blank" qu'il faut, c'est à dire, ouvrir la fenêtre dans une autre fenêtre.
Il faut que ça ouvre une autre fenêtre, la gestion de la souscription est indépendante.
Donc, est ce un souci par rapport au fait que l'on ouvre une autre fenêtre ?
Je vais aller jeter un oeil et je reviens te dire...