Soucis d'envoi avec le module "contact"
ReidLos Membre non connecté
-
Modérateur
- Voir le profil du membre ReidLos
- Inscrit le : 27/02/2009
- Site internet
- Groupes :
-
Equipe Développement
Reprise du message précédent
@lolab, il est sur la v3, non ?Nicky21 Membre non connecté
Booster Fuzil
-
Booster Fuzil
- Voir le profil du membre Nicky21
- Inscrit le : 11/11/2012
- Site internet
lobab Membre non connecté
Booster Mortier
-
Booster Mortier
- Voir le profil du membre lobab
- Inscrit le : 25/02/2012
- Groupes :

je vais voir si j'ai une v3 qui traine
Sinon, @ reidlos, dans l'hypothèse où cela aurait été la v4, ma déduction est pertinente ou pas ?
Que je sache si je donne des bonnes infos
Édité par lobab Le 17/12/2012 à 21h12
La puissance est un sommet de connaissances et l'intelligence est le moyen d'y accéder ... Est-ce pour ça qu'il y a tant de cons en bas des pistes ???
Heureux celui qui est sourd, lui au moins, peut écouter le silence
Heureux celui qui est sourd, lui au moins, peut écouter le silence

ReidLos Membre non connecté
-
Modérateur
- Voir le profil du membre ReidLos
- Inscrit le : 27/02/2009
- Site internet
- Groupes :
-
Equipe Développement
Citation :
J'ai effectué mes recherches sur le module contact, et j'ai trouvé la fonction "build_form()" et "send_mail()" dans le fichier "contact/phpboost/ContactModuleHomePage.class.php"
La fonction build_form semble construire le formulaire et la fonction send_mail semble gérer l'envoi du mail et le contenu ...
Donc si je ne me trompe pas, dans la fonction build_form, il faut déclarer les champs et dans la fonction send_mail, il faut définir les champs à joindre à l'email
Je te précise encore que je bidouille seulement, mais je ne suis pas du tout sûr de ce que j'ai écrit
Disons juste que je ferais des tests ici et voir ce que cela donne
La fonction build_form semble construire le formulaire et la fonction send_mail semble gérer l'envoi du mail et le contenu ...
Donc si je ne me trompe pas, dans la fonction build_form, il faut déclarer les champs et dans la fonction send_mail, il faut définir les champs à joindre à l'email
Je te précise encore que je bidouille seulement, mais je ne suis pas du tout sûr de ce que j'ai écrit
Disons juste que je ferais des tests ici et voir ce que cela donne
C'est tout à fait ça

Si tu as besoin d'aide n'hésites pas
lobab Membre non connecté
Booster Mortier
-
Booster Mortier
- Voir le profil du membre lobab
- Inscrit le : 25/02/2012
- Groupes :
Alors, j'ai fais mes petits tests (en local), excepté l'envoi de l'email qui reste à vérifier ...
Dis-moi si l'affichage chez toi est ok et surtout si l'envoi se fait avec tous les champs

(je suppose qu'il faut modifier le fichier /kernel/framework/io/mail.class.php pour que l'envoi fonctionne avec tous les champs)
Je suis parti du module contact original et j'ai apporté les modifications dans les fichiers par rapport à ceux de ton zip ...
Quelques fichiers étaient incomplets et il y avait quelques erreurs, je pense avoir fait le nécessaire

Les champs du formulaire s'affichent sans erreurs chez moi
Je n'ai pas pas cherché à optimiser au max ton code (l'affichage étant correct, tu pourras t'inspirer du code existant pour le compléter selon tes désirs), je n'ai fait que rendre le module affichable sans erreur ...
Eventuellement, retoucher le contact.tpl pour un meilleur visuel
Contact.php
Code PHP :
<?php /*################################################## * contact.php * ------------------- * begin : July 29, 2005 * copyright : (C) 2005 Viarre Régis * email : crowkait@phpboost.com * * ################################################### * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * ###################################################*/ require_once('../kernel/begin.php'); require_once('../contact/contact_begin.php'); require_once('../kernel/header.php'); $mail_from = retrieve(POST, 'mail_email', '', TSTRING_UNCHANGE); $mail_object = retrieve(POST, 'mail_object', '', TSTRING_UNCHANGE);$mail_societe = retrieve(POST, 'mail_societe', '', TSTRING_UNCHANGE); $mail_activite = retrieve(POST, 'mail_activite', '', TSTRING_UNCHANGE); $mail_adress_ent1 = retrieve(POST, 'mail_adress_ent1', '', TSTRING_UNCHANGE); $mail_adress_ent2 = retrieve(POST, 'mail_adress_ent2', '', TSTRING_UNCHANGE); $mail_cp_ent = retrieve(POST, 'mail_cp_ent', '', TSTRING_UNCHANGE); $mail_ville_ent = retrieve(POST, 'mail_ville_ent', '', TSTRING_UNCHANGE); $mail_tel_ent = retrieve(POST, 'mail_tel_ent', '', TSTRING_UNCHANGE); $mail_fax = retrieve(POST, 'mail_fax', '', TSTRING_UNCHANGE); $mail_tva = retrieve(POST, 'mail_tva', '', TSTRING_UNCHANGE); $mail_siret = retrieve(POST, 'mail_siret', '', TSTRING_UNCHANGE); $mail_statut = retrieve(POST, 'mail_statut', '', TSTRING_UNCHANGE); $mail_resp = retrieve(POST, 'mail_resp', '', TSTRING_UNCHANGE); $mail_fonct = retrieve(POST, 'mail_fonct', '', TSTRING_UNCHANGE); $mail_nom_sal = retrieve(POST, 'mail_nom_sal', '', TSTRING_UNCHANGE); $mail_pren_sal = retrieve(POST, 'mail_pren_sal', '', TSTRING_UNCHANGE); $mail_ss1 = retrieve(POST, 'mail_ss1', '', TSTRING_UNCHANGE); $mail_ss2 = retrieve(POST, 'mail_ss2', '', TSTRING_UNCHANGE); $mail_ss3 = retrieve(POST, 'mail_ss3', '', TSTRING_UNCHANGE); $mail_ss4 = retrieve(POST, 'mail_ss4', '', TSTRING_UNCHANGE); $mail_ss5 = retrieve(POST, 'mail_ss5', '', TSTRING_UNCHANGE); $mail_ss6 = retrieve(POST, 'mail_ss6', '', TSTRING_UNCHANGE); $mail_ss7 = retrieve(POST, 'mail_ss7', '', TSTRING_UNCHANGE); $mail_adress_sal1 = retrieve(POST, 'mail_adress_sal', '', TSTRING_UNCHANGE); $mail_adress_sal2 = retrieve(POST, 'mail_adress_sal', '', TSTRING_UNCHANGE); $mail_cp_sal = retrieve(POST, 'mail_cp_sal', '', TSTRING_UNCHANGE); $mail_ville_sal = retrieve(POST, 'mail_ville_sal', '', TSTRING_UNCHANGE); $mail_tel_sal = retrieve(POST, 'mail_tel_sal', '', TSTRING_UNCHANGE); $mail_raison = retrieve(POST, 'mail_raison', '', TSTRING_UNCHANGE); $mail_date_1 = retrieve(POST, 'mail_date_1', '', TSTRING_UNCHANGE); $mail_date_2 = retrieve(POST, 'mail_date_2', '', TSTRING_UNCHANGE); $mail_hpres1 = retrieve(POST, 'mail_hpres1', '', TSTRING_UNCHANGE); $mail_hpres2 = retrieve(POST, 'mail_hpres2', '', TSTRING_UNCHANGE); $mail_hpres3 = retrieve(POST, 'mail_hpres3', '', TSTRING_UNCHANGE); $mail_docteur = retrieve(POST, 'mail_docteur', '', TSTRING_UNCHANGE); $mail_cabinet = retrieve(POST, 'mail_cabinet', '', TSTRING_UNCHANGE); $mail_contents = retrieve(POST, 'mail_contents', '', TSTRING_UNCHANGE); $mail_valid = retrieve(POST, 'mail_valid', ''); $get_error = ''; import('util/captcha'); $captcha = new Captcha(); $captcha->set_difficulty($CONFIG_CONTACT['contact_difficulty_verifcode']); ###########################Envoi############################## if (!empty($mail_valid)) { //Code de vérification si activé if (!$CONFIG_CONTACT['contact_verifcode'] || $captcha->is_valid()) //Code de vérification si activé { import('io/mail'); $mail = new Mail(); if ($mail->send_from_properties($CONFIG['mail'], $mail_object, $mail_contents, $mail_from, '', 'user')) //Succès mail { $get_error = 'success'; } else //Erreur mail { $get_error = 'error'; } } else //Champs incomplet! { $get_error = 'verif'; } } elseif (!empty($_POST['mail_valid']) && ( empty($mail_email) || empty($mail_contents) )) //Champs incomplet! { $get_error = 'incomplete'; } ###########################Affichage############################## $Template->set_filenames(array( 'contact'=> 'contact/contact.tpl' )); //Gestion erreur. if ($get_error == 'incomplete') { $Errorh->handler($LANG['e_incomplete'], E_USER_NOTICE); } elseif ($get_error == 'verif') { $Errorh->handler($LANG['e_incorrect_verif_code'], E_USER_WARNING); } elseif ($get_error == 'success')//Message de succés. { $Errorh->handler($LANG['success_mail'], E_USER_SUCCESS); } elseif ($get_error == 'error')//Message de succés. { $Errorh->handler($LANG['error_mail'], E_USER_WARNING); } //Code de vérification, anti-bots. if ($captcha->is_available() && $CONFIG_CONTACT['contact_verifcode']) { $Template->assign_vars(array( 'C_VERIF_CODE' => true, 'VERIF_CODE' => $captcha->display_form(), 'L_REQUIRE_VERIF_CODE' => $captcha->js_require() )); } $Template->assign_vars(array( 'MAIL' => $User->get_attribute('user_mail'), 'CONTACT_OBJECT' => stripslashes(retrieve(POST, 'mail_object', '')), 'CONTACT_CONTENTS' => $mail_contents,'CONTACT_DOCTEUR' => $mail_docteur, 'CONTACT_HEUR_PRES_OUI' => $mail_hpres1, 'CONTACT_HEUR_PRES_NON' => $mail_hpres2, 'CONTACT_HEUR_PRES_LIB' => $mail_hpres3, 'L_REQUIRE_MAIL' => $LANG['require_mail'], 'L_REQUIRE_TEXT' => $LANG['require_text'] , 'L_CONTACT_MAIL' => $LANG['contact_mail'], 'L_MAIL' => $LANG['mail'], 'L_VERIF_CODE' => $LANG['verif_code'], 'L_REQUIRE' => $LANG['require'], 'L_VALID_MAIL' => $LANG['valid_mail'], 'L_OBJET' => $LANG['objet'], 'L_CONTENTS' => $LANG['content'],'L_VOSINFOS_ENT' => $LANG['vos_info_ent'], 'L_VOSINFOS_SAL' => $LANG['vos_info_sal'], 'L_SOCIETE' => $LANG['societe'], 'L_ACTIVITE' => $LANG['activite'], 'L_PASSWORD' => $LANG['password'], 'L_ADRESSE_ENT' => $LANG['adress_ent'], 'L_ADRESSE_ENT1' => $LANG['adress_ent1'], 'L_ADRESSE_ENT2' => $LANG['adress_ent2'], 'L_CODEPOSTAL_ENT' => $LANG['cp_ent'], 'L_VILLE_ENT' => $LANG['ville_ent'], 'L_TVA' => $LANG['tva'], 'L_TELEPHONE_ENT' => $LANG['tel_ent'], 'L_FAX' => $LANG['fax'], 'L_SIRET' => $LANG['siret'], 'L_STATUT' => $LANG['statut'], 'L_RESP' => $LANG['resp'], 'L_FONCT' => $LANG['fonction'], 'L_NOM_SAL' => $LANG['nom_sal'], 'L_PRENOM_SAL' => $LANG['pren_sal'], 'L_SECU' => $LANG['secu'], 'L_ADRESSE_SAL' => $LANG['adress_sal'], 'L_ADRESSE_SAL1' => $LANG['adress_sal1'], 'L_ADRESSE_SAL2' => $LANG['adress_sal2'], 'L_CODEPOSTAL_SAL' => $LANG['cp_sal'], 'L_VILLE_SAL' => $LANG['ville_sal'], 'L_TELEPHONE_SAL' => $LANG['tel_sal'], 'L_RAISON' => $LANG['raison'], 'L_DEPUISLE' => $LANG['depuisle'], 'L_JUSQUAU' => $LANG['jusquau'], 'L_HEUR_PRES' => $LANG['h_pres'], 'L_DOCTEUR' => $LANG['docteur'], 'L_CABINET' => $LANG['cabinet'], 'L_SUBMIT' => $LANG['submit'], 'L_RESET' => $LANG['reset'], 'U_ACTION_CONTACT' => url('contact.php?token=' . $Session->get_token()) )); $Template->pparse('contact'); require_once('../kernel/footer.php'); ?>
Contact.tpl
(ajouter les champs à vérifier dans "function check_form_mail()" pour obliger le remplissage des champs requis)
Code TPL :
<script type="text/javascript"> <!-- function check_form_mail(){ if(document.getElementById('mail_email').value == "") { alert("{L_REQUIRE_MAIL}"); return false; } if(document.getElementById('mail_contents').value == "") { alert("{L_REQUIRE_TEXT}"); return false; } {L_REQUIRE_VERIF_CODE} return true; } --> </script> # IF C_ERROR_HANDLER # <span id="errorh"></span> <div class="{ERRORH_CLASS}" style="width:500px;margin:auto;padding:15px;"> <img src="../templates/{THEME}/images/{ERRORH_IMG}.png" alt="" style="float:left;padding-right:6px;" /> {L_ERRORH} <br /> </div> # ENDIF # <form action="{U_ACTION_CONTACT}" method="post" onsubmit="return check_form_mail();" class="fieldset_mini"> <fieldset> <legend>{L_CONTACT_MAIL}</legend> <p>{L_REQUIRE}</p> <dl> <dt><label for="mail_email">* {L_MAIL}</label><br /><span>{L_VALID_MAIL}</span></dt> <dd><label><input type="text" size="30" maxlength="50" id="mail_email" name="mail_email" value="{MAIL}" class="text" /></label></dd> </dl> <dl> <dt><label for="mail_objet">{L_OBJET}</label></dt> <dd><label><input type="text" size="30" name="mail_object" id="mail_object" class="text" value="{CONTACT_OBJECT}" /></label></dd> </dl> <dl> <dt><label for="mail_societe">* {L_SOCIETE}</label></dt> <dd><label><input type="text" size="30" name="mail_societe" id="mail_societe" class="text" value="{CONTACT_SOCIETE}" /></label></dd> </dl> <dl> <dt><label for="mail_activite">* {L_ACTIVITE}</label></dt> <dd><label><input type="text" size="30" name="mail_activite" id="mail_activite" class="text" value="{CONTACT_ACTIVITE}" /></label></dd> </dl> <dl> <dt><label for="mail_adress_ent">* {L_ADRESSE_ENT}</label></dt> <dd><label><input type="text" size="30" name="mail_adress_ent1" id="mail_adress_ent1" class="text" value="{CONTACT_ADRESSE_ENT1}" /></label></dd><dd><label><input type="text" size="30" name="mail_adress_ent2" id="mail_adress_ent2" class="text" value="{CONTACT_ADRESSE_ENT2}" /></label></dd> </dl> <dl> <dt><label for="mail_cp_ent">* {L_CODEPOSTAL_ENT}</label></dt> <dd><label><input type="text" size="30" name="mail_cp_ent" id="mail_cp_ent" class="text" value="{CONTACT_CODEPOSTAL_ENT}" /></label></dd> </dl> <dl> <dt><label for="mail_ville_ent">* {L_VILLE_ENT}</label></dt> <dd><label><input type="text" size="30" name="mail_ville_ent" id="mail_ville_ent" class="text" value="{CONTACT_VILLE_ENT}" /></label></dd> </dl> <dl> <dt><label for="mail_tel_ent">* {L_TELEPHONE_ENT}</label></dt> <dd><label><input type="text" size="30" name="mail_tel_ent" id="mail_tel_ent" class="text" value="{CONTACT_TELEPHONE_ENT}" /></label></dd> </dl> <dl> <dt><label for="mail_fax">{L_FAX}</label></dt> <dd><label><input type="text" size="30" name="mail_fax" id="mail_fax" class="text" value="{CONTACT_FAX}" /></label></dd> </dl> <dl> <dt><label for="mail_tva">* {L_TVA}</label></dt> <dd><label><input type="text" size="30" name="mail_tva" id="mail_tva" class="text" value="{CONTACT_TVA}" /></label></dd> </dl> <dl> <dt><label for="mail_siret">* {L_SIRET}</label></dt> <dd><label><input type="text" size="30" name="mail_siret" id="mail_siret" class="text" value="{CONTACT_SIRET}" /></label></dd> </dl> <dl> <dt><label for="mail_statut">* {L_STATUT}</label></dt> <dd><label><input type="text" size="30" name="mail_statut" id="mail_statut" class="text" value="{CONTACT_STATUT}" /></label></dd> </dl> <dl> <dt><label for="mail_resp">* {L_RESP}</label></dt> <dd><label><input type="text" size="30" name="mail_resp" id="mail_resp" class="text" value="{CONTACT_RESP}" /></label></dd> </dl> <dl> <dt><label for="mail_fonct">* {L_FONCT}</label></dt> <dd><label><input type="text" size="30" name="mail_fonct" id="mail_fonct" class="text" value="{CONTACT_FONCTION}" /></label></dd> </dl> # IF C_VERIF_CODE # <dl> <dt><label for="verif_code">* {L_VERIF_CODE}</label></dt> <dd> <label> {VERIF_CODE} </label> </dd> </dl> # ENDIF # <label for="mail_contents">* {L_CONTENTS}</label> <label><textarea rows="10" cols="47" id="mail_contents" name="mail_contents">{CONTACT_CONTENTS}</textarea></label> </fieldset> <fieldset class="fieldset_submit"> <legend>{L_SUBMIT}</legend> <input type="submit" name="mail_valid" value="{L_SUBMIT}" class="submit" /> <input type="reset" value="{L_RESET}" class="reset" /> <input type="hidden" name="token" value="{TOKEN}" /> </fieldset> </form>
/lang/french/contact_french.php
Code PHP :
<?php /*################################################## * contact_french.php * ------------------- * begin : July 29, 2005 * copyright : (C) 2005 Viarre Régis * email : crowkait@phpboost.com * * ################################################### * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * ###################################################*/ #################################################### # French # #################################################### //Titre $LANG['title_contact'] = 'Contact'; //Contact $LANG['contact_mail'] = 'Mandater notre société'; $LANG['valid_mail'] = 'Doit être valide pour vous répone !'; $LANG['success_mail'] = 'Merci, votre e-mail a été envoyé avec succès à Angel Médical'; $LANG['error_mail'] = 'Désolé, votre mail n'a pas pu être envoyé'; $LANG['alert_contact_mail'] = 'Le mail que vous avez entré n'est pas valide !'; $LANG['vos_info_ent'] = 'Informations sur votre entreprise:'; $LANG['societe'] = 'Société'; $LANG['activite'] = 'Activité'; $LANG['password'] = 'Mot de passe'; $LANG['adress_ent'] = 'Adresse'; $LANG['adress_ent1'] = 'Adresse1'; $LANG['adress_ent2'] = 'Adresse2'; $LANG['cp_ent'] = 'Code postal'; $LANG['ville_ent'] = 'Ville'; $LANG['tva'] = 'TVA Intracommunautaire'; $LANG['tel_ent'] = 'Téléphone'; $LANG['fax'] = 'FAX'; $LANG['siret'] = 'SIRET'; $LANG['statut'] = 'Statut'; $LANG['resp'] = 'Responsable'; $LANG['vos_info_sal'] = 'Informations sur le salarié à contrôler:'; $LANG['fonction'] = 'Fonction'; $LANG['nom_sal'] = 'Nom'; $LANG['pren_sal'] = 'Prénom'; $LANG['secu'] = 'N° Sécurité sociale'; $LANG['adress_sal'] = 'Adresse'; $LANG['adress_sal1'] = 'Adresse1'; $LANG['adress_sal2'] = 'Adresse2'; $LANG['cp_sal'] = 'Code Postal'; $LANG['ville_sal'] = 'Ville'; $LANG['tel_sal'] = 'Téléphone'; $LANG['raison'] = 'Raisons de l'arrêt de travail'; $LANG['depuisle'] = 'Depuis le'; $LANG['jusquau'] = 'Jusqu'au'; $LANG['h_pres'] = 'Heures de sorties'; $LANG['docteur'] = 'Docteur'; $LANG['cabinet'] = 'Cabinet'; //Admin $LANG['contact_config'] = 'Configuration'; $LANG['activ_verif_code'] = 'Activer le code vérification'; ?>
/lang/english/contact_english.php
Code PHP :
<?php /*################################################## * contact_english.php * ------------------- * begin : July 29, 2005 * copyright : (C) 2005 Viarre Régis * email : crowkait@phpboost.com * * ################################################### * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * ###################################################*/ #################################################### # English # #################################################### //Title $LANG['title_contact'] = 'Contact'; //Contact $LANG['contact_mail'] = 'Send an e-mail to the administrator'; $LANG['valid_mail'] = 'Must be valid for answer!'; $LANG['success_mail'] = 'Thank you, your e-mail has been sent successfully to Angel Medical'; $LANG['error_mail'] = 'Sorry, your e-mail couldn't be sent'; $LANG['alert_contact_mail'] = 'Your e-mail address isn't valid!'; $LANG['vos_info_ent'] = 'Informations sur votre entreprise:'; $LANG['societe'] = 'Company'; $LANG['activite'] = 'Activité'; $LANG['password'] = 'Password'; $LANG['adress_ent'] = 'Adress'; $LANG['adress_ent1'] = 'Adress1'; $LANG['adress_ent2'] = 'Adress2'; $LANG['cp_ent'] = 'Postal Code'; $LANG['ville_ent'] = 'City'; $LANG['tva'] = 'TVA Intracommuneautaire'; $LANG['tel_ent'] = 'Phone'; $LANG['fax'] = 'FAX'; $LANG['siret'] = 'SIRET'; $LANG['statut'] = 'Statut'; $LANG['resp'] = 'Responsable'; $LANG['vos_info_sal'] = 'Informations about employee to be controled :'; $LANG['fonction'] = 'Fonction'; $LANG['nom_sal'] = 'Name'; $LANG['pren_sal'] = 'Last Name'; $LANG['secu'] = 'N° Sécurité sociale'; $LANG['adress_sal'] = 'Adress'; $LANG['adress_sal1'] = 'Adress1'; $LANG['adress_sal2'] = 'Adress2'; $LANG['cp_sal'] = 'Postal Code'; $LANG['ville_sal'] = 'City'; $LANG['tel_sal'] = 'Phone'; $LANG['raison'] = 'Out of work's reasons'; $LANG['depuisle'] = 'Since'; $LANG['jusquau'] = 'Until'; $LANG['h_pres'] = 'Free hours to go'; $LANG['docteur'] = 'Doctor'; $LANG['cabinet'] = 'Cabinet'; //Admin $LANG['contact_config'] = 'Configuration'; $LANG['activ_verif_code'] = 'Activate verification code'; ?>
Édité par lobab Le 20/12/2012 à 22h05
La puissance est un sommet de connaissances et l'intelligence est le moyen d'y accéder ... Est-ce pour ça qu'il y a tant de cons en bas des pistes ???
Heureux celui qui est sourd, lui au moins, peut écouter le silence
Heureux celui qui est sourd, lui au moins, peut écouter le silence

Nicky21 Membre non connecté
Booster Fuzil
-
Booster Fuzil
- Voir le profil du membre Nicky21
- Inscrit le : 11/11/2012
- Site internet
J'ai donc repris les codes, et les ai testés. dans le .tpl il manque une partie du formulaire, mais ça je peux le rajouter sans soucis. par contre l'envoi ne me notifie toujours que l’expéditeur, l'objet, et le message.
comme tu dis ce doit être le fichier "mail class.php qu'il faut modifier pour l'envoi des champs.
peux tu me dire ou étaient d’après toi mes erreurs pour que je comprenne?
je joint le fichier contact.tpl , avec les champs supplémentaires (celui que j’avais créé avant ta modif
)on sur ceux, j'attend du monde et je suis a la bourre loll...
Bonnes fêtes de fin d'années à tous!!!!!
Code PHP :
<script type="text/javascript"> <!-- function check_form_mail(){ if(document.getElementById('mail_email').value == "") { alert("{L_REQUIRE_MAIL}"); return false; } if(document.getElementById('mail_object').value == "") { alert("{L_REQUIRE_OBJECT}"); return false; } if(document.getElementById('mail_contents').value == "") { alert("{L_REQUIRE_TEXT}"); return false; } {L_REQUIRE_VERIF_CODE} return true; } --> </script> # IF C_ERROR_HANDLER # <span id="errorh"></span> <div class="{ERRORH_CLASS}" style="width:500px;margin:auto;padding:15px;"> <img src="../templates/{THEME}/images/{ERRORH_IMG}.png" alt="" style="float:left;padding-right:6px;" /> {L_ERRORH} <br /> </div> # ENDIF # <form action="{U_ACTION_CONTACT}" method="post" onsubmit="return check_form_mail();" class="fieldset_mini"> <fieldset> <legend>{L_CONTACT_MAIL}</legend> <p>{L_REQUIRE}</p> <dl> <dt><label for="mail_email">* {L_MAIL}</label><br /><span>{L_VALID_MAIL}</span></dt> <dd><label><input type="text" size="30" maxlength="50" id="mail_email" name="mail_email" value="{MAIL}" class="text" /></label></dd> </dl> <dl> <dt><label for="mail_objet">* {L_OBJET}</label></dt> <dd><label><input type="text" size="30" name="mail_object" id="mail_object" class="text" value="{CONTACT_OBJECT}" /></label></dd> </dl> <dl> <dt><label for="mail_societe">* {L_SOCIETE}</label></dt> <dd><label><input type="text" size="30" name="mail_societe" id="mail_societe" class="text" value="{CONTACT_SOCIETE}" /></label></dd> </dl> <dl> <dt><label for="mail_activite">* {L_ACTIVITE}</label></dt> <dd><label><input type="text" size="30" name="mail_activite" id="mail_activite" class="text" value="{CONTACT_ACTIVITE}" /></label></dd> </dl> <dl> <dt><label for="mail_adress_ent">* {L_ADRESSE_ENT}</label></dt> <dd><label><input type="text" size="30" name="mail_adress_ent1" id="mail_adress_ent1" class="text" value="{CONTACT_ADRESSE_ENT1}" /></label></dd> <dd><label><input type="text" size="30" name="mail_adress_ent2" id="mail_adress_ent2" class="text" value="{CONTACT_ADRESSE_ENT2}" /></label></dd> </dl> <dl> <dt><label for="mail_cp_ent">* {L_CODEPOSTAL_ENT}</label></dt> <dd><label><input type="text" size="30" name="mail_cp_ent" id="mail_cp_ent" class="text" value="{CONTACT_CODEPOSTAL_ENT}" /></label></dd> </dl> <dl> <dt><label for="mail_ville_ent">* {L_VILLE_ENT}</label></dt> <dd><label><input type="text" size="30" name="mail_ville_ent" id="mail_ville_ent" class="text" value="{CONTACT_VILLE_ENT}" /></label></dd> </dl> <dl> <dt><label for="mail_tel_ent">* {L_TELEPHONE_ENT}</label></dt> <dd><label><input type="text" size="30" name="mail_tel_ent" id="mail_tel_ent" class="text" value="{CONTACT_TELEPHONE_ENT}" /></label></dd> </dl> <dl> <dt><label for="mail_fax">{L_FAX}</label></dt> <dd><label><input type="text" size="30" name="mail_fax" id="mail_fax" class="text" value="{CONTACT_FAX}" /></label></dd> </dl> <dl> <dt><label for="mail_tva">* {L_TVA}</label></dt> <dd><label><input type="text" size="30" name="mail_tva" id="mail_tva" class="text" value="{CONTACT_TVA}" /></label></dd> </dl> <dl> <dt><label for="mail_siret">* {L_SIRET}</label></dt> <dd><label><input type="text" size="30" name="mail_siret" id="mail_siret" class="text" value="{CONTACT_SIRET}" /></label></dd> </dl> <dl> <dt><label for="mail_statut">* {L_STATUT}</label></dt> <dd><label><input type="text" size="30" name="mail_statut" id="mail_statut" class="text" value="{CONTACT_STATUT}" /></label></dd> </dl> <dl> <dt><label for="mail_resp">* {L_RESP}</label></dt> <dd><label><input type="text" size="30" name="mail_resp" id="mail_resp" class="text" value="{CONTACT_RESP}" /></label></dd> </dl> <dl> <dt><label for="mail_fonct">* {L_FONCT}</label></dt> <dd><label><input type="text" size="30" name="mail_fonct" id="mail_fonct" class="text" value="{CONTACT_FONCTION}" /></label></dd> </dl> </fieldset> <fieldset> <legend>{L_VOSINFOS_SAL}</legend> <dl> <dt><label for="mail_nom_sal">* {L_NOM_SAL}</label></dt> <dd><label><input type="text" size="30" name="mail_nom_sal" id="mail_nom_sal" class="text" value="{CONTACT_NOM_SAL}" /></label></dd> </dl> <dl> <dt><label for="mail_pren_sal">* {L_PRENOM_SAL}</label></dt> <dd><label><input type="text" size="30" name="mail_pren_sal" id="mail_pren_sal" class="text" value="{CONTACT_PRENOM_SAL}" /></label></dd> </dl> <dl> <dt><label for="mail_secu">* {L_SECU}</label></dt> <dd><label><input type="text" size="1" name="mail_ss1" id="mail_ss1" class="text" value="{CONTACT_SS1}" /></label> <label><input type="text" size="2" name="mail_ss2" id="mail_ss2" class="text" value="{CONTACT_SS2}" /></label> <label><input type="text" size="2" name="mail_ss3" id="mail_ss3" class="text" value="{CONTACT_SS3}" /></label> <label><input type="text" size="2" name="mail_ss4" id="mail_ss4" class="text" value="{CONTACT_SS4}" /></label> <label><input type="text" size="3" name="mail_ss5" id="mail_ss5" class="text" value="{CONTACT_SS5}" /></label> <label><input type="text" size="3" name="mail_ss6" id="mail_ss6" class="text" value="{CONTACT_SS6}" /></label> <label><input type="text" size="2" name="mail_ss7" id="mail_ss7" class="text" value="{CONTACT_SS7}" /></label></dd> </dl> <dl> <dt><label for="mail_adress_sal">* {L_ADRESSE_SAL}</label></dt> <dd><label><input type="text" size="30" name="mail_adress_sal1" id="mail_adress_sal1" class="text" value="{CONTACT_ADRESSE_SAL1}" /></label></dd> <dd><label><input type="text" size="30" name="mail_adress_sal2" id="mail_adress_sal2" class="text" value="{CONTACT_ADRESSE_SAL2}" /></label></dd> </dl> <dl> <dt><label for="mail_cp_sal">* {L_CODEPOSTAL_SAL}</label></dt> <dd><label><input type="text" size="30" name="mail_cp_sal" id="mail_cp_sal" class="text" value="{CONTACT_CODEPOSTAL_SAL}" /></label></dd> </dl> <dl> <dt><label for="mail_ville_sal">* {L_VILLE_SAL}</label></dt> <dd><label><input type="text" size="30" name="mail_ville_sal" id="mail_ville_sal" class="text" value="{CONTACT_VILLE_SAL}" /></label></dd> </dl> <dl> <dt><label for="mail_tel_sal">* {L_TELEPHONE_SAL}</label></dt> <dd><label><input type="text" size="30" name="mail_tel_sal" id="mail_tel_sal" class="text" value="{CONTACT_TELEPHONE_SAL}" /></label></dd> </dl> <dl> <dt><label for="mail_raison">{L_RAISON}</label></dt> <dd><label><input type="text" size="30" name="mail_raison" id="mail_raison" class="text" value="{CONTACT_RAISON}" /></label></dd> </dl> <dl> <dt><label for="mail_date_1">{L_DEPUISLE}</label></dt> <dd><label><input type="text" size="30" name="mail_date_1" id="mail_date_1" class="text" value="{CONTACT_DEPUISLE}" /></label></dd> </dl> <dl> <dt><label for="mail_date2">{L_JUSQUAU}</label></dt> <dd><label><input type="text" size="30" name="mail_date2" id="mail_date2" class="text" value="{CONTACT_JUSQUAU}" /></label></dd> </dl> <dl> <dt><label for="mail_hpres1">* {L_HEUR_PRES}</label></dt> <dd><label> <input type="RADIO" name="mail_hpres1" id="mail_hpres1" class="text" value="{CONTACT_HEUR_PRES_OUI}"/>OUI <input type="RADIO" name="mail_hpres2" id="mail_hpres2" class="text" value="{CONTACT_HEUR_PRES_NON}"/>NON <input type="RADIO" name="mail_hpres3" id="mail_hpres3" class="text" value="{CONTACT_HEUR_PRES_LIB}"/>SORTIES LIBRES </label></dd> </dl> <dl> <dt><label for="mail_docteur">{L_DOCTEUR}</label></dt> <dd><label><input type="text" size="30" name="mail_docteur" id="mail_docteur" class="text" value="{CONTACT_DOCTEUR}" /></label></dd> </dl> <dl> <dt><label for="mail_cabinet">{L_CABINET}</label></dt> <dd><label><input type="text" size="30" name="mail_cabinet" id="mail_cabinet" class="text" value="{CONTACT_CABINET}" /></label></dd> </dl> # IF C_VERIF_CODE # <dl> <dt><label for="verif_code">* {L_VERIF_CODE}</label></dt> <dd> <label> {VERIF_CODE} </label> </dd> </dl> # ENDIF # <label for="mail_contents">* {L_CONTENTS}</label> <label><textarea rows="10" cols="47" id="mail_contents" name="mail_contents">{CONTACT_CONTENTS}</textarea></label> </fieldset> <fieldset class="fieldset_submit"> <legend>{L_SUBMIT}</legend> <input type="submit" name="mail_valid" value="{L_SUBMIT}" class="submit" /> <input type="reset" value="{L_RESET}" class="reset" /> <input type="hidden" name="token" value="{TOKEN}" /> </fieldset> </form>
lobab Membre non connecté
Booster Mortier
-
Booster Mortier
- Voir le profil du membre lobab
- Inscrit le : 25/02/2012
- Groupes :
Tes erreurs étaient pour la plupart sur la correspondance des variables déclarées dans le contact.php qui doivent correspondre aux variables dans les fichiers contact_french.php et contact_english.php pour que le contact.tpl puisse afficher correctement.
En gros, il manquait des variables dans les fichiers lang

J'espère que mes explications sont assez claires car entre bidouiller et enseigner, il y a un métier mdr
Édité par lobab Le 22/12/2012 à 10h32
La puissance est un sommet de connaissances et l'intelligence est le moyen d'y accéder ... Est-ce pour ça qu'il y a tant de cons en bas des pistes ???
Heureux celui qui est sourd, lui au moins, peut écouter le silence
Heureux celui qui est sourd, lui au moins, peut écouter le silence

Nicky21 Membre non connecté
Booster Fuzil
-
Booster Fuzil
- Voir le profil du membre Nicky21
- Inscrit le : 11/11/2012
- Site internet
Tu m'as vraiment aidé comprendre certaines choses. donc pour ma part je crois que pour l'envoi si je suis ton raisonnement, il faut modifier aussi le fichier mail.class.php pour déclarer les données à envoyer par mail lors de l'envoi.
Par contre en ouvrant ce fichier je vois que les variables sont appelées à plusieurs endroits du fichier. peux tu me dire quelles sont les lignes à modifier pour que je le fasse et teste ?
merci
lobab Membre non connecté
Booster Mortier
-
Booster Mortier
- Voir le profil du membre lobab
- Inscrit le : 25/02/2012
- Groupes :
Il me semble qu'il serait judicieux de créer un autre mail.class.php pour ton module contact2 ...
Si on modifie le mail.class.php original, alors on risque de perturber le module contact.
Dès que j'ai du nouveau, je te le ferais savoir
La puissance est un sommet de connaissances et l'intelligence est le moyen d'y accéder ... Est-ce pour ça qu'il y a tant de cons en bas des pistes ???
Heureux celui qui est sourd, lui au moins, peut écouter le silence
Heureux celui qui est sourd, lui au moins, peut écouter le silence

ReidLos Membre non connecté
-
Modérateur
- Voir le profil du membre ReidLos
- Inscrit le : 27/02/2009
- Site internet
- Groupes :
-
Equipe Développement

Ce qu'il faut faire c'est avant :
Code PHP :
if ($mail->send_from_properties($CONFIG['mail'], $mail_object, $mail_contents, $mail_from, '', 'user'))
Rajouter :
Code PHP :
$mail_contents .= "nn"; $mail_contents .= "nn Activité : " . $mail_from; $mail_contents .= "nn Adresse : " . $mail_adress_ent1;
.. etc
lobab Membre non connecté
Booster Mortier
-
Booster Mortier
- Voir le profil du membre lobab
- Inscrit le : 25/02/2012
- Groupes :
Merci pour le coup de pouce, ça évitera de perdre du temps en partant dans le mauvais sens
La puissance est un sommet de connaissances et l'intelligence est le moyen d'y accéder ... Est-ce pour ça qu'il y a tant de cons en bas des pistes ???
Heureux celui qui est sourd, lui au moins, peut écouter le silence
Heureux celui qui est sourd, lui au moins, peut écouter le silence

Nicky21 Membre non connecté
Booster Fuzil
-
Booster Fuzil
- Voir le profil du membre Nicky21
- Inscrit le : 11/11/2012
- Site internet
peux tu me dire le numéro de ligne sur le quel faire les modifs car je ne vois pas la ligne que tu me spécifie?
Code PHP :
<?php define('CRLF',"rn"); define('MIME_FORMAT_TEXT','text/plain'); define('MIME_FORMAT_HTML','text/html'); class Mail { function Mail() { } function set_sender($sender,$sender_name='admin') { global $LANG,$CONFIG; $this->sender_name=str_replace('"','',$CONFIG['site_name'].' - '.($sender_name=='admin'?$LANG['admin']:$LANG['user'])); if(Mail::check_validity($sender)) { $this->sender_mail=$sender; return true; } else { return false; } } function set_recipients($recipients) { $this->recipients=''; $recipients_list=explode(';',$recipients); $recipients_list=array_map('trim',$recipients_list); foreach($recipients_list as $recipient) { if(Mail::check_validity($recipient)) { $this->recipients[]=$recipient; } } if(!empty($this->recipients)) { return true; } else { return false; } } function set_object($object) { $this->object=$object; } function set_content($content) { $this->content=$content; } function set_headers($headers) { $this->headers=$headers; } function get_sender_mail() { return $this->sender_mail; } function get_sender_name() { return $this->sender_name; } function get_recipients() { return $this->recipients; } function get_object() { return $this->object; } function get_content() { return $this->content; } function get_headers() { return $this->headers; } function set_mime($mime) { $this->format=$mime; } function get_mime() { return $this->format(); } function send_from_properties($mail_to,$mail_object,$mail_content,$mail_from,$mail_header=null,$sender_name='admin') { $recipient=$this->set_recipients($mail_to); $sender=$this->set_sender($mail_from,$sender_name); if(!$recipient ||!$sender) { return false; } $this->set_object($mail_object); $this->set_content($mail_content); $this->set_headers($mail_header); return $this->send(); } function send() { if(empty($this->headers)) { $this->_generate_headers(); } $recipients=trim(implode(', ',$this->recipients),', '); return @mail($recipients,$this->object,$this->content,$this->headers); } function check_validity($mail_address) { return preg_match('`^(?:[a-z0-9_!#$%&'*+/=?^|~-]+.)*[a-z0-9_!#$%&'*+/=?^|~-]+@(?:[a-z0-9_-]{2,}.)+([a-z0-9_-]{2,}.)*[a-z]{2,4}$`i',$mail_address); } ## Protected Methods ## function _generate_headers() { global $LANG; $this->header=''; $this->_add_header_field('From','"'.$this->sender_name.' '.HOST.'" <'.$this->sender_mail.'>'); $recipients=''; $nb_recipients=count($this->recipients); for($i=0;$i<$nb_recipients;$i++) { $recipients.='"'.$this->recipients[$i].'" <'.$this->recipients[$i].'>'; if($i<$nb_recipients-1) { $recipients.=', '; } } $this->_add_header_field('MIME-Version','1.0'); $this->_add_header_field('Content-type',$this->format.'; charset=ISO-8859-1'); } function _add_header_field($field,$value){ $this->headers.=wordwrap($field.': '.$value,78,"n ").CRLF; } ## Private Attributes ## var $object=''; var $content=''; var $sender_mail=''; var $sender_name=''; var $headers=''; var $recipients=array(); var $format=MIME_FORMAT_TEXT; } ?>
Merci a vous deux!
Édité par Nicky21 Le 28/12/2012 à 11h28
lobab Membre non connecté
Booster Mortier
-
Booster Mortier
- Voir le profil du membre lobab
- Inscrit le : 25/02/2012
- Groupes :
Il ne faut pas modifier le fichier mail.class.php, mauvaise indication
La modif de Reidlos est à faire dans le contact.php de ton module
La puissance est un sommet de connaissances et l'intelligence est le moyen d'y accéder ... Est-ce pour ça qu'il y a tant de cons en bas des pistes ???
Heureux celui qui est sourd, lui au moins, peut écouter le silence
Heureux celui qui est sourd, lui au moins, peut écouter le silence

Nicky21 Membre non connecté
Booster Fuzil
-
Booster Fuzil
- Voir le profil du membre Nicky21
- Inscrit le : 11/11/2012
- Site internet
Répondre
Vous n'êtes pas autorisé à écrire dans cette catégorie