Bonjour, j'ai cette erreur : "Attaque potentielle par téléchargement de fichiers. Voici plus d'informations : Class Mail, method attach : file ./upload/23.jpg can't be found" je pense que ça viens de la taille de fichier. Pouvez-vous m'aider . Merci :)
catem
Messages postés17Date d'inscriptionmercredi 27 février 2008StatutMembreDernière intervention20 août 2014 14 août 2014 à 16:10
Difficile à penser qu'une extension manquante bloque le script, et surtout je ne vois pas où insérer ça !
je vais ouvrir une question,
Merci quand même
jordane45
Messages postés38145Date d'inscriptionmercredi 22 octobre 2003StatutModérateurDernière intervention25 avril 2024344 14 août 2014 à 15:49
Si ça ne fonctionne pas... c'est que la fonction ne possède pas l'extension que tu essayes de mettre.. il te faut la rajouter dans le code...
Si malgré ça.. ça ne marche toujours pas... ouvre une QUESTION sur le forum directement (en expliquant en détail ce qui ne marche pas et ce que tu as essayé).
catem
Messages postés17Date d'inscriptionmercredi 27 février 2008StatutMembreDernière intervention20 août 2014 14 août 2014 à 14:59
toutes sortes d'extensions; c'est pour une newsletter et les membres de l'assoc
Merci
jordane45
Messages postés38145Date d'inscriptionmercredi 22 octobre 2003StatutModérateurDernière intervention25 avril 2024344 14 août 2014 à 10:35
Et de quelle forme est cette adresse ?
Comment se termine t elle (.fr .com .eu.... ) ?
catem
Messages postés17Date d'inscriptionmercredi 27 février 2008StatutMembreDernière intervention20 août 2014 14 août 2014 à 09:54
Salut à tous
Super script, mis en place rapidement à exception d'un string BCC issue d'une requête MySQL... erreur Class Mail, method Mail : invalid address 111
J'ai retourné le problème dans tous les sens, pas moyen de trouver le format adéquate
Merci pour votre aide
jordane45
Messages postés38145Date d'inscriptionmercredi 22 octobre 2003StatutModérateurDernière intervention25 avril 2024344 9 juin 2014 à 15:45
Bonjour Albert,
Merci de poser vos questions directement sur le forum et non dans le commentaire des sources.
Hélas il est possible de rentrer n'importe quel texte et de ce fait, je ne récupère pas le mail du visiteur.
Une idée ?
elcapo125
Messages postés2Date d'inscriptiondimanche 12 décembre 2010StatutMembreDernière intervention16 mars 2011 18 mai 2012 à 16:21
bravo
ringostare
Messages postés3Date d'inscriptionjeudi 5 février 2009StatutMembreDernière intervention24 octobre 2009 5 oct. 2011 à 20:38
bonjour,
merci pour le script.
J'aimerai demander le nom du bonhomme, j'ai rajouté ceci dans mon code html :
<tr>
<td>Votre Nom:</td>
<td></td></tr>
<tr>
mais je ne sais pas ce que je dois faire dans le fichier "formail"
merci à vous.
lucaristide
Messages postés2Date d'inscriptionvendredi 15 janvier 2010StatutMembreDernière intervention17 avril 2011 17 avril 2011 à 08:40
Pour DEADY512
Bonjour voici une solution
dans form.html
Ajouter Choix multiple
lucaristide
Messages postés2Date d'inscriptionvendredi 15 janvier 2010StatutMembreDernière intervention17 avril 2011 30 mars 2011 à 09:00
Bonjour
formulaire ok
Mais je souhaite ajouter:
-un Champ "Tel"
-et une liste déroulante "Adhérents, Renseignements"
J'ai crer les champs suppléméntaires dans form.html
Mais je n'arrive pas à envoyer les infos à l'adresse email
Merci de votre aide
Hary
deady512
Messages postés7Date d'inscriptionjeudi 10 novembre 2005StatutMembreDernière intervention29 mars 2011 29 mars 2011 à 10:01
Je cherche je cherche mais je ne tombe pas sur la bonne syntaxe !! Si quelqu'un peut m'aider pleas !!
deady512
Messages postés7Date d'inscriptionjeudi 10 novembre 2005StatutMembreDernière intervention29 mars 2011 28 mars 2011 à 17:22
Ok c'est déjà mieux !
Mais il me fais un mot comme quoi
"Class Mail, method Mail : invalid address"
La " function CheckAdresses( $aad ) " qui n'accepte pas mon adresse mail. Pourtant pas moyen de trouver plus banale ! XXXXXX@live.be
(et j'ai ajouté le be dans la " function ValidEmail($address) "
Quelqu'un a une idée ?! C'est assez important ! Merci !
cfndiaye
Messages postés18Date d'inscriptionvendredi 4 novembre 2005StatutMembreDernière intervention26 mai 2011 28 mars 2011 à 16:38
essai
$dest = $_POST['desti'];
deady512
Messages postés7Date d'inscriptionjeudi 10 novembre 2005StatutMembreDernière intervention29 mars 2011 28 mars 2011 à 12:57
Bonjour,
Votre script est génial !
J'aimerais juste ajouter une liste déroulante pour choisir l'adresse mail d'envoie. J'avais pensé à ceci dans
d'utiliser son code et d'y rajouter les lignes de ton code pour joindre un fichier je pense que ca ferais un sacré truc
sartoz
Messages postés27Date d'inscriptionvendredi 15 octobre 2010StatutMembreDernière intervention12 août 2012 24 oct. 2010 à 19:34
un bon gros 10 , bravo pour ton script j'avais besoin pour envoyer des fichiers via formulaire voila , c'est trouver
en plus tu n'obliges la personne de mettre expediteur , sujet , message
c'est vraiment genial! car moi enfaite j'avais juste besoin de la fonction envoi fichier alors du coup dans le form.html j'ai juste laisser:
<tr>
<td>Fichier joint:</td>
<td></td>
</tr>
<tr>
<td>
</td>
</tr>
ce qui permet de juste envoyer un fichier , et CA MARCHE , merci
jmaster
Messages postés2Date d'inscriptionjeudi 19 août 2010StatutMembreDernière intervention21 août 2010 27 août 2010 à 22:40
Bravo et merci beaucoup +++++
bobyones
Messages postés11Date d'inscriptionmardi 16 janvier 2007StatutMembreDernière intervention 5 août 2010 5 août 2010 à 18:24
Fonctionne maintenant avec chrome. un grand bravo.
Ticlic
Messages postés2Date d'inscriptionmercredi 19 octobre 2005StatutMembreDernière intervention 9 avril 2010 9 avril 2010 à 10:42
C'est moi qui te remercie. Non seulement ton script fonctionne à merveille, mais il est tellement bien renseigné qu'un grand débutant en PHP de 62 balais comme moi y retrouve ses billes. Je ne saurais assez insister sur l'importance des codes bien renseignés et du choix des noms des variables. Sur ce plan, rien ne tombe sous le sens. Et ton code est un modèle du genre.
cfndiaye
Messages postés18Date d'inscriptionvendredi 4 novembre 2005StatutMembreDernière intervention26 mai 2011 9 avril 2010 à 10:29
Merci Ticlic
Ticlic
Messages postés2Date d'inscriptionmercredi 19 octobre 2005StatutMembreDernière intervention 9 avril 2010 9 avril 2010 à 09:25
Un grand bravo pour le travail de correction du script original. Maintenant, ça marche nickel-chrome.
goyter
Messages postés2Date d'inscriptionjeudi 9 mars 2006StatutMembreDernière intervention23 mars 2010 23 mars 2010 à 11:17
Au temps pour moi, il fallait juste modifier le nom du fichier formmail.php
goyter
Messages postés2Date d'inscriptionjeudi 9 mars 2006StatutMembreDernière intervention23 mars 2010 19 mars 2010 à 16:51
Salut,
Super script, mais ça bloque pour moi chez ovh pour des pièces jointes de plus de 1 Mo est ce que par hasard quelqu'un aurait une piste ?
Merci à vous
cs_ludm
Messages postés133Date d'inscriptionjeudi 1 janvier 2004StatutMembreDernière intervention23 octobre 2011 21 févr. 2010 à 19:34
Fonctionne parfaitement sur serveur OVH mutualisé, merci!
deadrefused
Messages postés1Date d'inscriptionvendredi 13 février 2009StatutMembreDernière intervention18 janvier 2010 18 janv. 2010 à 16:01
Salut
Super le code marche bien pour moi.
Je veut juste rajouter des champs.
Ce n'est pas un problème dans la page form.html, c'est fait.
Par contre dans la page formmail.php j'ai suivi les instructions de LITTLEBUBU sur son post
mais ça ne marche que pour un champ en plus...
Comment récupérer plusieurs champs rajouté ?
Merci de votre aide
ALain
ibaom
Messages postés4Date d'inscriptionmercredi 9 avril 2008StatutMembreDernière intervention 9 janvier 2009 20 déc. 2009 à 18:49
tres efficace,
merci
begin974
Messages postés11Date d'inscriptionjeudi 21 août 2008StatutMembreDernière intervention12 novembre 2009 12 nov. 2009 à 17:25
Bonjour,
j'ai testé ce code. il est super! Au faite ramanavy, j'ai pas de problème avec les boîtes hotmail.
Par contre lorsque j'insère le code dans une boucle pour envoyer à plusieurs destinataires récupérés dans une table de données, cela ne fonctionne pas. le mail est envoyé une seule fois.
Auriez vous une idée svp?
cs_ramanavy
Messages postés22Date d'inscriptionlundi 12 décembre 2005StatutMembreDernière intervention11 novembre 2009 11 nov. 2009 à 17:11
Après des tests, c'est la boîte au lettre qui n'accepte pas les fichiers attachés :
- sur hotmail.com ou hotmail.fr 0ko à chaque fois!
- sur gmail.com et orange.fr, tout fonctionne nickel
Encore merci pour le code.
cs_ramanavy
Messages postés22Date d'inscriptionlundi 12 décembre 2005StatutMembreDernière intervention11 novembre 2009 11 nov. 2009 à 16:45
Désolé, moi aussi je suis chez Ovh, mais le fichier fait 0 ko à chaque fois, quelqu'un peut me donner un coup de main ? est ce que ça marche pour toi CFNDIAYE ?
cfndiaye
Messages postés18Date d'inscriptionvendredi 4 novembre 2005StatutMembreDernière intervention26 mai 2011 8 oct. 2009 à 17:06
fait un teste avec le script depuis ovh pour voir les résultat
6rilmx
Messages postés4Date d'inscriptionlundi 7 janvier 2008StatutMembreDernière intervention 8 octobre 2009 8 oct. 2009 à 16:07
Mon hébergeur est OVH. Je n'ai pas vu comment régler ça. C'est dommage... je débute.
cfndiaye
Messages postés18Date d'inscriptionvendredi 4 novembre 2005StatutMembreDernière intervention26 mai 2011 8 oct. 2009 à 15:40
tout dépend de la configuration du serveur qui va herberger ton code
6rilmx
Messages postés4Date d'inscriptionlundi 7 janvier 2008StatutMembreDernière intervention 8 octobre 2009 7 oct. 2009 à 20:56
Désolé pour le double post, mais j'ai une autre question :
Si je configure celà, est-ce pour mon ordi uniquement ? Car je souhaiterais faire ça pour mon site en fait...
6rilmx
Messages postés4Date d'inscriptionlundi 7 janvier 2008StatutMembreDernière intervention 8 octobre 2009 7 oct. 2009 à 20:53
Où puis-je configurer les types de fichiers pris en compte par le serveur ?
Je pense que c'est un soucis par rapport au type MIME ou au nom de fichier (?)
cfndiaye
Messages postés18Date d'inscriptionvendredi 4 novembre 2005StatutMembreDernière intervention26 mai 2011 7 oct. 2009 à 20:13
SALUT 6rilmx regarde bien les paramettres de ton serveur de notre coté ça marche nikel
6rilmx
Messages postés4Date d'inscriptionlundi 7 janvier 2008StatutMembreDernière intervention 8 octobre 2009 7 oct. 2009 à 17:33
Salut à vous.
Ce formulaire est propre, merci.
Mais j'ai une gêne, quand j'envoie un document, impossible de l'ouvrir, étant donné qu'il ne pèse que 0,0ko lol
pourtant, je retrouve bien son nom dans le mail que je reçois, mais il n'y a que le nom... "la gallerie photo ne peut pas afficher cette image car il s'agit d'un fichier vide" ...
masternico
Messages postés487Date d'inscriptiondimanche 5 octobre 2003StatutMembreDernière intervention 1 septembre 2011 29 sept. 2009 à 10:17
Salut Vestax,
je pense que tu mélanges deux choses :
Il y a d'un côté le gestionnaire de fichiers et de l'autre la gestion des mails. Le protocole mail comme tu dis ne peux en aucun cas supprimer un fichier.
C'est à toi de le supprimer manuellement à la fin de l'envoi de mail. Ex:
//construction des headers et du body du message puis envoi
mail($destinataire,$objet,$body,$header);
unlink($chemin_vers_fichier_upload);
Maintenant, tu peux aussi utiliser la classe proposé ici car il est marqué:
'Le fichier joint est uploadé sur le serveur puis détruit une fois le mail envoyé.'
Ce qui je pense répond à ton besoin
VestaX
Messages postés374Date d'inscriptionmardi 2 décembre 2003StatutMembreDernière intervention24 avril 2013 29 sept. 2009 à 08:32
masternico exact, la pièce jointe doit effectivement etre stockée sur le serveur. Mais lors de la réception du mail, elle ne doit plus y être. Et c'est ca que je cherche. J'ai pourtant bien étudié le protocole mail, mais je reste toujours sans réponse. Il faudrais que la pièce s'efface du serveur des l'ouverture du mail
cfndiaye
Messages postés18Date d'inscriptionvendredi 4 novembre 2005StatutMembreDernière intervention26 mai 2011 28 sept. 2009 à 18:21
cool merci du conseil
masternico
Messages postés487Date d'inscriptiondimanche 5 octobre 2003StatutMembreDernière intervention 1 septembre 2011 28 sept. 2009 à 15:06
Il y a une technique qui consiste à modifier un champ caché par un script qui valide le formulaire avant de le faire partir vers le serveur et cela parce que les bots ne savent pas (encore) interpréter le javascript.
Explication:
Un bot de spam qui repère un formulaire d'envoi de mail sur un site va tenter d'activer le formulaire 'à la mano' en appelant la page fournie dans le paramètre action du form et en remplissant toutes les variables du formulaire. Ex:
<form action="send_email.php" method="GET">
</form>
Il au bot d'appeler la page avec les arguments suivant:
send_email.php?nom=zareazer&prenom=iouopiu&email=ozieuroz@ezr.com
Le script send_email.php n'y voit que du feu et envoi le mail au webmaster.
Par contre, il suffit de changer le form comme ceci:
<form action="send_email.php" method="GET" onsubmit="return valid_form(this)">
</form>
et de rajouter:
<script type="text/javascript">
function valid_form(form_pointer)
{
// on controle la validité des différents champs
// et si tout se passe bien on termine par ceci:
this.chkform = 'yep';
return true;
}
Ce qui fait que lorsque le bot trouve la page, il voit bien le champ caché mais il le laisse à la même valeur sans se douter que le script de validation va, lui, en modifier le contenu.
Du coup, dans le script send_mail.php, il suffit de tester si chkform == 'yep'. Sinon, c'est une tentative d'attaque par bot.
Simple mais efficace.
cfndiaye
Messages postés18Date d'inscriptionvendredi 4 novembre 2005StatutMembreDernière intervention26 mai 2011 28 sept. 2009 à 13:10
au fait ce code est juste une correction que j'ai apporté sur celui de littlebubu
pourquoi je l'ai fait:
au fait j'avais un client qui avais besoin d'un formulaire avec fichier joint pour que ses candidats puissent lui envoyer leur cv.
pour la sécurité je ne suis pas cassé la tete le laisse soin aux antivirus et antispam lol
masternico
Messages postés487Date d'inscriptiondimanche 5 octobre 2003StatutMembreDernière intervention 1 septembre 2011 28 sept. 2009 à 09:35
Même dans le cas de 'vraies' pièces jointes comme tu dis, il faut bien que le fichier soit transmit au serveur distant avant de pouvoir être attaché au mail qui va partir. Ou alors, il existe une subtilité de php que je ne connais pas. Donc de toutes façons, il faudra bien 'uploader' le fichier...
Pour ce qui est de la sécurité dont je parlais, c'est par rapport à cette phrase:
'La nouveauté est que ce script permet au visiteur de mettre un fichier joint avec son message'
Cela sous entent que cette fonctionnalité est laissé à disposition de TOUS les visiteurs du site. Personnellement, en tant que webmaster, je ne me vois pas laisser quelqu'un me bombarder de mail avec pièce jointe car c'est donner la possibilité de recevoir du spam voir même des virus...
Ce script à plus d'intérêt au seins d'une console admin dans laquelle un utilisateur authentifié peut envoyer un ticket de support avec une pièce jointe concernant son problème.
>>'Ou alors faudrais une partie admin permettant de nettoyer les fichiers à chaque fois.'
apparemment le script efface tout seul le fichier temporaire uploadé, donc pas besoin de se tracasser avec le nettoyage.
VestaX
Messages postés374Date d'inscriptionmardi 2 décembre 2003StatutMembreDernière intervention24 avril 2013 28 sept. 2009 à 09:08
Ben quand tu envoi des mails avec pièces jointe via outlook ou autre, c'est pareil. La sécurité n'est pas pour autant meilleure. J'en ai déjà vu des sources avec "vraies" pièces jointe. et non pas "upload". Car le problème de l'upload, c'est qu'il faut faire le nettoyage a chaque fois coté FTP. C'est ca le problème.
Ou alors faudrais une partie admin permettant de nettoyer les fichiers à chaque fois.
masternico
Messages postés487Date d'inscriptiondimanche 5 octobre 2003StatutMembreDernière intervention 1 septembre 2011 28 sept. 2009 à 08:39
je ne suis pas de cet avis, il s'agit réellement d'un attachement... avec upload préalable mais ça c'est comme pour tout les webmails... je le trouve plutôt pas mal écrit, il faudra que je le teste pour voir comment il fonctionne...
Par contre, l'idée de laisser a un utilisateur inconnu la possibilité de balancer une pièce jointe... glups... ça me fait froid dans le dos question sécurité...
VestaX
Messages postés374Date d'inscriptionmardi 2 décembre 2003StatutMembreDernière intervention24 avril 2013 28 sept. 2009 à 08:26
Hmm, c'est bien ce qu'il me semblait. Ce n'est rien de plus qu'un formulaire avec upload de fichier, et non pièce jointe. C'est ca que je recherche avec pièce jointe. Mais vraie pièce jointe :)
Sinon pour ta source, le code est propre, mais vraiment beaucoup beaucoup beaucoup de lignes juste pour un simple envoi!!!
28 juil. 2016 à 12:32
comment récupérer uniquement le code qui concerne la pièce jointe ?
4 sept. 2014 à 14:43
14 août 2014 à 16:10
je vais ouvrir une question,
Merci quand même
14 août 2014 à 15:49
Si malgré ça.. ça ne marche toujours pas... ouvre une QUESTION sur le forum directement (en expliquant en détail ce qui ne marche pas et ce que tu as essayé).
14 août 2014 à 14:59
Merci
14 août 2014 à 10:35
Comment se termine t elle (.fr .com .eu.... ) ?
14 août 2014 à 09:54
Super script, mis en place rapidement à exception d'un string BCC issue d'une requête MySQL... erreur Class Mail, method Mail : invalid address 111
J'ai retourné le problème dans tous les sens, pas moyen de trouver le format adéquate
Merci pour votre aide
9 juin 2014 à 15:45
Merci de poser vos questions directement sur le forum et non dans le commentaire des sources.
9 juin 2014 à 15:14
Dans le formmail.php, ligne 258 et 261 la fonction ereg est déprécié. J'ai essayé de la remplacer par une preg_match comme ceci :
258 : if( preg_match( "/.*<(.+)>/", $address, $regs ) )
261 : if(preg_match( "/^[^@ ]+@([a-zA-Z0-9\-]+\.)+([a-zA-Z0-9\-]{2}|net|com|gov|mil|org|edu|int)\$/",$address) )
Hélas il est possible de rentrer n'importe quel texte et de ce fait, je ne récupère pas le mail du visiteur.
Une idée ?
18 mai 2012 à 16:21
5 oct. 2011 à 20:38
merci pour le script.
J'aimerai demander le nom du bonhomme, j'ai rajouté ceci dans mon code html :
<tr>
<td>Votre Nom:</td>
<td></td></tr>
<tr>
mais je ne sais pas ce que je dois faire dans le fichier "formail"
merci à vous.
17 avril 2011 à 08:40
Bonjour voici une solution
dans form.html
Ajouter Choix multiple
<select name="destinataire" size="3">
option value="adresse1@xxx.fr">Bureau</option>
<option value="adresse2@xxx.fr">webmaster1</option>
<option value="adresse3@xxx.fr">Webmaster2</option>
<option value="adresse4@xxx.fr">Webmaster4</option>
</select>
Remplacer dansformmail.php
$dest="adresse@xxx.fr";
par
$dest=$_POST['destinataire'];
30 mars 2011 à 09:00
formulaire ok
Mais je souhaite ajouter:
-un Champ "Tel"
-et une liste déroulante "Adhérents, Renseignements"
J'ai crer les champs suppléméntaires dans form.html
Mais je n'arrive pas à envoyer les infos à l'adresse email
Merci de votre aide
Hary
29 mars 2011 à 10:01
28 mars 2011 à 17:22
Mais il me fais un mot comme quoi
"Class Mail, method Mail : invalid address"
La " function CheckAdresses( $aad ) " qui n'accepte pas mon adresse mail. Pourtant pas moyen de trouver plus banale ! XXXXXX@live.be
(et j'ai ajouté le be dans la " function ValidEmail($address) "
Quelqu'un a une idée ?! C'est assez important ! Merci !
28 mars 2011 à 16:38
$dest = $_POST['desti'];
28 mars 2011 à 12:57
Votre script est génial !
J'aimerais juste ajouter une liste déroulante pour choisir l'adresse mail d'envoie. J'avais pensé à ceci dans
<td><select name="desti" size="1" style="width: 213px">
<option value="mail1@xx.fr" selected="selected">mail 1</option>
<option value="mail2@xx.fr">mail 2</option>
</select></td>
mais alors il y a une erreur de synthaxe du coté de formmail.php...
$dest = ($_POST['document.form.desti.value']);
Merci de me donner un coup de main !!
24 oct. 2010 à 20:10
qui est super simple (qui ne permet pas d'attacher de piece jointe)
d'utiliser son code et d'y rajouter les lignes de ton code pour joindre un fichier je pense que ca ferais un sacré truc
24 oct. 2010 à 19:34
en plus tu n'obliges la personne de mettre expediteur , sujet , message
c'est vraiment genial! car moi enfaite j'avais juste besoin de la fonction envoi fichier alors du coup dans le form.html j'ai juste laisser:
<tr>
<td>Fichier joint:</td>
<td></td>
</tr>
<tr>
<td>
</td>
</tr>
ce qui permet de juste envoyer un fichier , et CA MARCHE , merci
27 août 2010 à 22:40
5 août 2010 à 18:24
9 avril 2010 à 10:42
9 avril 2010 à 10:29
9 avril 2010 à 09:25
23 mars 2010 à 11:17
19 mars 2010 à 16:51
Super script, mais ça bloque pour moi chez ovh pour des pièces jointes de plus de 1 Mo est ce que par hasard quelqu'un aurait une piste ?
Merci à vous
21 févr. 2010 à 19:34
18 janv. 2010 à 16:01
Super le code marche bien pour moi.
Je veut juste rajouter des champs.
Ce n'est pas un problème dans la page form.html, c'est fait.
Par contre dans la page formmail.php j'ai suivi les instructions de LITTLEBUBU sur son post
mais ça ne marche que pour un champ en plus...
Comment récupérer plusieurs champs rajouté ?
Merci de votre aide
ALain
20 déc. 2009 à 18:49
merci
12 nov. 2009 à 17:25
j'ai testé ce code. il est super! Au faite ramanavy, j'ai pas de problème avec les boîtes hotmail.
Par contre lorsque j'insère le code dans une boucle pour envoyer à plusieurs destinataires récupérés dans une table de données, cela ne fonctionne pas. le mail est envoyé une seule fois.
Auriez vous une idée svp?
11 nov. 2009 à 17:11
- sur hotmail.com ou hotmail.fr 0ko à chaque fois!
- sur gmail.com et orange.fr, tout fonctionne nickel
Encore merci pour le code.
11 nov. 2009 à 16:45
8 oct. 2009 à 17:06
8 oct. 2009 à 16:07
8 oct. 2009 à 15:40
7 oct. 2009 à 20:56
Si je configure celà, est-ce pour mon ordi uniquement ? Car je souhaiterais faire ça pour mon site en fait...
7 oct. 2009 à 20:53
Je pense que c'est un soucis par rapport au type MIME ou au nom de fichier (?)
7 oct. 2009 à 20:13
7 oct. 2009 à 17:33
Ce formulaire est propre, merci.
Mais j'ai une gêne, quand j'envoie un document, impossible de l'ouvrir, étant donné qu'il ne pèse que 0,0ko lol
pourtant, je retrouve bien son nom dans le mail que je reçois, mais il n'y a que le nom... "la gallerie photo ne peut pas afficher cette image car il s'agit d'un fichier vide" ...
29 sept. 2009 à 10:17
je pense que tu mélanges deux choses :
Il y a d'un côté le gestionnaire de fichiers et de l'autre la gestion des mails. Le protocole mail comme tu dis ne peux en aucun cas supprimer un fichier.
C'est à toi de le supprimer manuellement à la fin de l'envoi de mail. Ex:
//construction des headers et du body du message puis envoi
mail($destinataire,$objet,$body,$header);
unlink($chemin_vers_fichier_upload);
Maintenant, tu peux aussi utiliser la classe proposé ici car il est marqué:
'Le fichier joint est uploadé sur le serveur puis détruit une fois le mail envoyé.'
Ce qui je pense répond à ton besoin
29 sept. 2009 à 08:32
28 sept. 2009 à 18:21
28 sept. 2009 à 15:06
Explication:
Un bot de spam qui repère un formulaire d'envoi de mail sur un site va tenter d'activer le formulaire 'à la mano' en appelant la page fournie dans le paramètre action du form et en remplissant toutes les variables du formulaire. Ex:
<form action="send_email.php" method="GET">
</form>
Il au bot d'appeler la page avec les arguments suivant:
send_email.php?nom=zareazer&prenom=iouopiu&email=ozieuroz@ezr.com
Le script send_email.php n'y voit que du feu et envoi le mail au webmaster.
Par contre, il suffit de changer le form comme ceci:
<form action="send_email.php" method="GET" onsubmit="return valid_form(this)">
</form>
et de rajouter:
<script type="text/javascript">
function valid_form(form_pointer)
{
// on controle la validité des différents champs
// et si tout se passe bien on termine par ceci:
this.chkform = 'yep';
return true;
}
Ce qui fait que lorsque le bot trouve la page, il voit bien le champ caché mais il le laisse à la même valeur sans se douter que le script de validation va, lui, en modifier le contenu.
Du coup, dans le script send_mail.php, il suffit de tester si chkform == 'yep'. Sinon, c'est une tentative d'attaque par bot.
Simple mais efficace.
28 sept. 2009 à 13:10
pourquoi je l'ai fait:
au fait j'avais un client qui avais besoin d'un formulaire avec fichier joint pour que ses candidats puissent lui envoyer leur cv.
pour la sécurité je ne suis pas cassé la tete le laisse soin aux antivirus et antispam lol
28 sept. 2009 à 09:35
Pour ce qui est de la sécurité dont je parlais, c'est par rapport à cette phrase:
'La nouveauté est que ce script permet au visiteur de mettre un fichier joint avec son message'
Cela sous entent que cette fonctionnalité est laissé à disposition de TOUS les visiteurs du site. Personnellement, en tant que webmaster, je ne me vois pas laisser quelqu'un me bombarder de mail avec pièce jointe car c'est donner la possibilité de recevoir du spam voir même des virus...
Ce script à plus d'intérêt au seins d'une console admin dans laquelle un utilisateur authentifié peut envoyer un ticket de support avec une pièce jointe concernant son problème.
>>'Ou alors faudrais une partie admin permettant de nettoyer les fichiers à chaque fois.'
apparemment le script efface tout seul le fichier temporaire uploadé, donc pas besoin de se tracasser avec le nettoyage.
28 sept. 2009 à 09:08
Ou alors faudrais une partie admin permettant de nettoyer les fichiers à chaque fois.
28 sept. 2009 à 08:39
Par contre, l'idée de laisser a un utilisateur inconnu la possibilité de balancer une pièce jointe... glups... ça me fait froid dans le dos question sécurité...
28 sept. 2009 à 08:26
Sinon pour ta source, le code est propre, mais vraiment beaucoup beaucoup beaucoup de lignes juste pour un simple envoi!!!