[Plugin] MyContact - plusieurs destinataires ?

nicomaxnicomax Member
mars 2013 modifié dans Modifications
Salutatous,


Dans l'admin du plugin MyContact, j'ai besoin de mettre deux destinataires.


J'ai commencé à modifier le code du plugin comme suit :


FICHIER config.php :
Formulaire de configuration du plugin



Juste après ce code :

[== PHP ==]
if(!plxUtils::checkMail($_POST['email'])) {
	$_POST['email']='';
	plxMsg::Error($plxPlugin->getLang('L_ERROR_EMAIL'));
}


J'ai ajouter ce code :

[== PHP ==]
if(!plxUtils::checkMail($_POST['email_2'])) {
	$_POST['email_2']='';
	plxMsg::Error($plxPlugin->getLang('L_ERROR_EMAIL'));
}


++++++++++++++++++++++++++++++++
Puis juste après cette ligne :

[== PHP ==]
$plxPlugin->setParam('email', $_POST['email'], 'string');


J'ai ajouter cette ligne :

[== PHP ==]
$plxPlugin->setParam('email_2', $_POST['email_2'], 'string');


++++++++++++++++++++++++++++++++
Ensuite juste après cette ligne :

[== PHP ==]
$email = $plxPlugin->getParam('email')=='' ? '' : $plxPlugin->getParam('email');


J'ai ajouter cette ligne :

[== PHP ==]
$email_2 = $plxPlugin->getParam('email_2')=='' ? '' : $plxPlugin->getParam('email_2');


++++++++++++++++++++++++++++++++
Et enfin juste après ces deux lignes :

[== PHP ==]
<p class="field"><label for="id_email"><?php $plxPlugin->lang('L_EMAIL') ?>&nbsp;:</label></p>
<?php plxUtils::printInput('email',$email,'text','50-120') ?>


J'ai ajouter ces deux lignes :

[== PHP ==]
<p class="field"><label for="id_email_2"><?php $plxPlugin->lang('L_EMAIL') ?>&nbsp;:</label></p>
<?php plxUtils::printInput('email_2',$email_2,'text','50-120') ?>


FICHIER form.contact.php :
Formulaire d'envoi de message



A priori la phase d'envoi se passe dans ces lignes :

[== PHP ==]
if(!$error) {
		if(plxUtils::sendMail($name,$mail,$plxPlugin->getParam('email'),$plxPlugin->getParam('subject'),$content))
			$success = $plxPlugin->getParam('thankyou');
		else
			$error = $plxPlugin->getLang('L_ERR_SENDMAIL');
	}


Et c'est là que je bloque car je n'arrive pas à concaténer la variable email avec ma nouvelle variable email_2 !
Une petite aide serait la bienvenue...


Le reste fonctionne bien, à savoir :


Formulaire de config :
- affichage d'un second champ email_2 sur lequel fonctionne correctement la vérification
- à l'enregistrement de la config, le second email est bien pris en compte (il se ré-affiche)


Formulaire d'envoi (côté public) :
- toutes les vérifications fonctionnent correctement
- par contre l'envoi au deux destinataires ne se fait pas !


FICHIER plxMyContact.php


Aucune modification.

Réponses

  • StéphaneStéphane Member, Former PluXml Project Manager
    Salutatoi


    L'appel de la fonction sendMail dans le fichier core/lib/class.plx.utils.php se fait avec ces paramètres:
    [== PHP ==]
    public static function sendMail($name, $from, $to, $subject, $body, $contentType="text", $cc=false, $bcc=false) {
    ...
    }
    

    les destinataires en copie sont le 7ieme paramètre de la fonction
    ça donne donc
    [== PHP ==]
    if(plxUtils::sendMail($name,$mail,$plxPlugin->getParam('email'),$plxPlugin->getParam('subject'),$content, 'text',$plxPlugin->getParam('email_2') ))
    

    Consultant PluXml

    Ancien responsable du projet (2010 à 2018)

  • Merci Stéphane,
    ça fonctionne parfaitement :)


    Bien le "Salutatoi"... on y vient vite hein :lol:
Connectez-vous ou Inscrivez-vous pour répondre.