Création
d'entreprise
Posez votre question Signaler

PHP récupérer > mailer un fichier [Résolu]

rashguir 2Messages postés 22 décembre 2009Date d'inscription - Dernière réponse le 23 déc. 2009 à 08:58
Bonjour,
j'ai créé un formulaire devant envoyer un fichier, je le récupère avec $_FILES['nom_de_fichier']['name'] et je n'arrive pas à l'utiliser pour l'envoyer par mail par la suite.
Voici le code :
la page avec le formulaire :
echo '<div class="corps">
<form method="post" action="?page=candspont" enctype="multipart/form-data">
<table>
<tr><td colspan="2">Pièces à joindre à votre candidature (en .pdf) : </td></tr>
<tr><td>CV :</td><td><input type="file" name="cv"></td></tr>
<tr><td colspan="2" align="center"><input type="submit" value="Envoyer"></td></tr>
</table>
</form>';
la page qui réceptionne :
$cv = $_FILES['cv']['name'];
echo $cv.'<br />';
le echo m'affiche juste le nom du fichier
par la suite, le bout de code qui passe pas :
$file = $cv;
$fp = fopen($file, "rb"); line 337
$attachment = fread($fp, filesize($file)); line 338
fclose($fp); line 339
et la c'est le drame :
Warning: fopen(CVtest.pdf) [function.fopen]: failed to open stream: No such file or directory in W:\var\www\index.php on line 337
Warning: filesize() [function.filesize]: stat failed for CVtest.pdf in W:\var\www\index.php on line 338
Warning: fread(): supplied argument is not a valid stream resource in W:\var\www\index.php on line 338
Warning: fclose(): supplied argument is not a valid stream resource in W:\var\www\index.php on line 339
Si vous avez une solution, ça ferait bien plaisir.
Merci d'avance
Lire la suite 

PHP récupérer > mailer un fichier »

2 réponses
Réponse
+0
moins plus
Salut,

ca fit longtemps que j'ai plus utilisé l'assemblage des mails mais il me semble que $_FILES['cv']['name'], ne correspond pas a ce que tu veux.

il me semble que c'est le nom sous lequel l'expéditeur a nommé son fichier, mais sur ton serveur il est stocké avec un nom autre, un nom temporaire. 2 possibilités

1°) tu l'upload sur ton serveur et ensuite tu l'ouvres
ou
2°) tu utilises son vrai nom temporaire $_FILES['cv']['tmp_name']
Ajouter un commentaire
Réponse
+0
moins plus
Bonjour,

Merci beaucoup nico, la solution numéro 2 fonctionne bien.
Ajouter un commentaire
Ce document intitulé « PHP récupérer > mailer un fichier » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?