Bonjour !

J'ai encore un soucis avec mon mailer php (J'y arriverais peut être un jour !)

Enfin bref, j'arrive presque à joindre mon fichier PDF en pièce jointe mais j'ai un soucis au niveau du filesize(), j'y ai mis à l'intérieur le chemin jusqu'à mon fichier PDF mais malheureusement il m'indique une erreur lorsque j'envoie le mail et lorsque j'ouvre le mail reçu il y a bien la pièce jointe au format PDF mais impossible de l'ouvrir
J'ai testé deux options :

Soit dans mon fread j'ai mis le filesize pour la valeur du length comme ceci :
$attachement = fread($fichier, filesize($lienpdf));

et là il me dit qu'il y a bien une PJ rattaché mais qu'elle est vide et le poids du mail est de 2ko.

Soit dans mon fread j'ai mis directement une valeur au niveau du length :
$attachement = fread($fichier, "150000");

et là il essaye d'ouvrir la PJ mais me mets qu'elle est incomplète ou corrompue mais le poids du mail est d'environ 22ko.

Voici mon code :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
//=====Lecture et mise en forme de la pièce jointe.
$pdf = $this->affichage_lien_pdf();
$pdf = HTTP.$pdf; 
$lienpdf = $this->get_CodeHTML($pdf); // je reçois ici le chemin complet vers mon fichier PDF
$nompdf = $this->get_name($pdf);
$fichier   = fopen($lienpdf, "r");
$attachement = fread($fichier, filesize($lienpdf)); // Erreur au niveau du filesize
$attachement = chunk_split(base64_encode($attachement));
fclose($fichier);
//==========
//=====Ajout de la pièce jointe.
$message.= 'Content-Type: application/pdf; name="'.$nompdf.'"'.$passage_ligne;
$message.= "Content-Transfer-Encoding: base64".$passage_ligne;
$message.= 'Content-Disposition: attachment; filename="'.$nompdf.'"'.$passage_ligne;
$message.= $passage_ligne.$attachement.$passage_ligne.$passage_ligne;
$message.= $passage_ligne."--".$boundary."--".$passage_ligne; 
//==========
Citation Envoyé par Erreur
Warning: filesize() [function.filesize]: stat failed for http://55.95.7.219/MiniClientMail/Ar...fcdd5e7b18.pdf in C:\wamp\www\MiniClientMail\Classes\Traitement\tableauDeBord.php on line 222

Warning: fread() [function.fread]: Length parameter must be greater than 0 in C:\wamp\www\MiniClientMail\Classes\Traitement\tableauDeBord.php on line 222
De là me viens la question : Un filesize en php peut il lire le poids d'un fichier PDF ?

Merci d'avance pour votre aide !