Il est en lien avec un fichier : class.createForm.php (qui lui même est en lien avec d'autres fichiers : class.smtp.php, class.phpmailer.php, createform.lang-fr.php)
Tout marche très bien, à savoir le formulaire se rempli correctement y compris pour la selection du fichier à uploader, les vérifications sont effectuées, il arrive sur la boite mail avec les champs remplis.
SEUL PROBLEME : UPLOADER UN FICHIER
Quand je reçois le formulaire sur ma boite mail, il manque le fichier joint. J'ai uniquement le champs "Fichier :" mais rien d'écrit à côté (comme pour les autres champs) ni même aucune pièce jointe.
Après plusieurs heures de recherches infructueuses, je me tourne vers vous pour ce problème.
Questions :
Quels peuvent être les raisons de l'absence du fichier joint au formulaire sur ma boite mail ?
Comment peut-on regler ce problème ?
/********************************************************
CREATION ELEMENT CASE A COCHER
*********************************************************/
case 'checkbox' : for( $t = 0; $t < count($element[4]); $t++) {
gaetanmgm
Messages postés5Date d'inscriptionmercredi 14 novembre 2007StatutMembreDernière intervention27 janvier 2010 26 janv. 2010 à 16:54
<?php
class createForm {
var $elements = array();
var $valid = true;
var $contenuMail;
var $champObligatoire = array();
var $erreur = false;
var $champsVides = array();
var $rapportError = array();
var $paramMail = array();
var $ref_variables = array();
/********************************************************
CREATION ELEMENT CASE A COCHER
*********************************************************/
case 'checkbox' : for( $t = 0; $t < count($element[4]); $t++) {
//Écriture de la pièce jointe
$this->contenuMail .= "--" .$limite. "\n
Content-Type: application/msword; name="nom_fichier"\r\n
Content-Transfer-Encoding: base64\r\n
Content-Disposition: attachment; filename="nom_fichier"\r\n\n
$fichier";
//Fermeture de la frontière
$this->contenuMail .= "--" .$limite. "--";
En sachant que le Content type la est celui pour un fichier word : application/msword, il se trouve dans $_FILES['nomduchampfilesdevotreformulaire']['type'] !
Cela devrait t'aider à mettre en place le fichier dans le mail.
Sinon si tu n'y arrive pas, il faudra aussi joindre la class class.phpmailer.php pour pouvoir mettre en place le boundary