Accueil > Forum > > > > formulaire + image
formulaire + image
vendredi 21 octobre 2005 à 13:44:35 |
formulaire + image

velsy
|
Salut,
Voilà mon problème j'ai créée un formulaire en HTML je récupère les informations du formulaire sur ma boîte mail gràce à un fichier PHP. Dans mon formulaire les personnes peuvent ajouter 3 images grâce à un input type file: <tr> <td align="right" valign="bottom" colspan="2"> <p> <input type="file" name="fichier" size="20" > <input type="hidden" name="taille_max" value="10000"> <br> </p> </td> <td valign="middle" colspan="2"> Première photo</td> </tr> <tr> <td align="right" valign="bottom" colspan="2"> <p> <input type="file" name="fichierdeux" size="20" > <input type="hidden" name="taille_max" value="10000"> <br> </p> </td> <td valign="middle" colspan="2"> Deuxième photo</td> </tr> <tr> <td align="right" valign="bottom" colspan="2"> <p> <input type="file" name="fichiertrois" size="20" > <input type="hidden" name="taille_max" value="10000"> <br> </p> </td> <td valign="middle" colspan="2"> Troisième photo</td> </tr>
Mais je ne reçoie que le chemin du fichier, moi ce que j'aimerais c'est pouvoir récupérer le fichier sans devoir passer par une base de donnée.
Voici mon fichier php
<?php $nom=$HTTP_POST_VARS['nom']; $prenom=$HTTP_POST_VARS['prenom']; $adresse=$HTTP_POST_VARS['adresse']; $adresse_suite=$HTTP_POST_VARS['adresse_suite']; $code=$HTTP_POST_VARS['code']; $tel=$HTTP_POST_VARS['telephone']; $fax=$HTTP_POST_VARS['fax']; $lieu=$HTTP_POST_VARS['lieu']; $titre=$HTTP_POST_VARS['titre']; $ca=$HTTP_POST_VARS['ca']; $loyer=$HTTP_POST_VARS['loyer']; $prix=$HTTP_POST_VARS['prix']; $texte=$HTTP_POST_VARS['texte']; $coor=$HTTP_POST_VARS['coordonnees']; $mail_contact=$HTTP_POST_VARS['mail_contact']; $site=$HTTP_POST_VARS['site']; $email=$HTTP_POST_VARS['email']; $rubrique=$HTTP_POST_VARS['rubrique']; $type=$HTTP_POST_VARS['type']; $temps=$HTTP_POST_VARS['temps'];
$rubriquedeux=$HTTP_POST_VARS['rubriquedeux']; $rubriquetrois=$HTTP_POST_VARS['rubriquetrois']; $tailleMax = $_POST['taille_max'] ;
$nomFichier = $_FILES['fichier']['name'] ; $tailleFichier = $_FILES['fichier']['size'] ; $nomTmp = $_FILES['fichier']['tmp_name'] ; $typeFichier = $_FILES['fichier']['type'] ; $error = $_FILES['fichier']['error'] ;
$nomFichierdeux = $_FILES['fichierdeux']['name'] ; $tailleFichierdeux = $_FILES['fichierdeux']['size'] ; $nomTmpdeux = $_FILES['fichierdeux']['tmp_name'] ; $typeFichierdeux = $_FILES['fichierdeux']['type'] ; $errordeux = $_FILES['fichierdeux']['error'] ;
$nomFichiertrois = $_FILES['fichiertrois']['name'] ; $tailleFichiertrois = $_FILES['fichiertrois']['size'] ; $nomTmptrois = $_FILES['fichiertrois']['tmp_name'] ; $typeFichiertrois = $_FILES['fichiertrois']['type'] ; $errortrois = $_FILES['fichiertrois']['error'] ;
/////voici la version Mine $headers = "MIME-Version: 1.0\r\n"; //////ici on détermine le mail en format text $headers .= "Content-type: text/plain; charset=iso-8859-1\r\n"; ////ici on détermine l'expediteur et l'adresse de réponse $headers .= "From: $nom <$email>\r\nReply-to : $nom <$email>\nX-Mailer:PHP"; $subject="$loyer"; $destinataire="moi@moi.com"; $body="commande "; ////contenu du mail $text ="mail : ".$email ."\n"; $text.="Nom : ".$nom ."\n"; $text.="Prénom : ".$prenom ."\n"; $text.="Adresse : ".$adresse .$adresse_suite ."\n"; $text.="code postal et ville : ".$code ."\n"; $text.="Tél. : ".$tel."\n"; $text.="Fax : ".$fax ."\n"; $text.="Dép. : ".$lieu ."\n"; $text.="Titre : ".$titre ."\n"; $text.="C.A : ".$ca ."\n"; $text.="Loyer : ".$loyer ."\n"; $text.="Prix : ".$prix ."\n"; $text.="texte : ".$texte ."\n"; $text.="coordonnées : ".$coor ."\n"; $text.="mail contact : ".$mail_contact ."\n"; $text.="1er rub : ".$rubrique ."\n"; $text.="2e rub : ".$rubriquedeux ."\n"; $text.="3e rub : ".$rubriquetrois ."\n"; $text.="Type : ".$type ."\n"; $text.="Type d'offre : ".$temps ."\n";
$text.="nom de fichier : ".$nomFichier ."\n"; $text.="taille : ".$tailleFichier ."\n";
$text.="Type Fichier : ".$typeFichier ."\n";
$text.="nom de fichier2 : ".$nomFichierdeux ."\n"; $text.="taille2 : ".$tailleFichierdeux ."\n";
$text.="nom de fichier3 : ".$nomFichiertrois ."\n"; $text.="taille3 : ".$tailleFichiertrois ."\n";
$text.="Type Fichier3 : ".$typeFichiertrois ."\n";
if (mail($destinataire,$body, $subject, $text)) { echo "Votre mail a été envoyé"; } else { echo "Une erreur s'est produite"; } ?>
Merci pour votre réponse
Velsy
|
|
vendredi 21 octobre 2005 à 14:15:02 |
Re : formulaire + image

coockiesch
|
Salut!
Je pense que tu dois passer par plusieurs étapes:
1) envoi du fichier sur le serveur ( http://www.phpcs.com/code.aspx?id=16813 , ... )
Ensuite, soit tu laisse le fichier sur le serveur et tu t'envoie par
mail que l'url soit tu envoie le fichier en pièce jointe et tu le
supprimes ensuite.
http://www.phpcs.com/code.aspx?id=33297
@++
R@f
www.allpotes.ch: Photos, humour, vidéos, gags, ... "On dit que seulement 10 personnes au monde comprenaient Einstein. Personne ne me comprends. Suis-je un génie???"
|
|
vendredi 21 octobre 2005 à 14:34:20 |
Re : formulaire + image

velsy
|
Je viens de mettre ce script : envoie le fichier en pièce jointe et tu le supprimes ensuite. http://www.phpcs.com/code.aspx?id=33297 Je reçoie bien un mail avec toute les informations sauf que je nai rien en pièce jointe.
Comment dois je faire.
|
|
vendredi 21 octobre 2005 à 14:45:34 |
Re : formulaire + image

coockiesch
|
Salut!
Il faut que tu upload le fichier sur le serveur pour commencer. Tu as
ensuite, dans le script que tu viens de me monter, une variable qui
contient le nom des fichiers à envoyer:
- //les fichiers joints a attacher
- $attachement = '';
@++
R@f www.allpotes.ch: Photos, humour, vidéos, gags, ... "On dit que seulement 10 personnes au monde comprenaient Einstein. Personne ne me comprends. Suis-je un génie???"
|
|
vendredi 21 octobre 2005 à 14:48:33 |
Re : formulaire + image

coockiesch
|
Je précise que l'upload d'un fichier sur le serveur est un petit peu plus compliqué que juste:
$nomFichiertrois = $_FILES['fichiertrois']['name'] ;
$tailleFichiertrois = $_FILES['fichiertrois']['size'] ;
$nomTmptrois = $_FILES['fichiertrois']['tmp_name'] ;
$typeFichiertrois = $_FILES['fichiertrois']['type'] ;
$errortrois = $_FILES['fichiertrois']['error'] ;
Regarde
http://www.phpcs.com/code.aspx?id=21663
www.allpotes.ch: Photos, humour, vidéos, gags, ... "On dit que seulement 10 personnes au monde comprenaient Einstein. Personne ne me comprends. Suis-je un génie???"
|
|
vendredi 21 octobre 2005 à 14:52:42 |
Re : formulaire + image

velsy
|
Comment je fais pour "upload le fichier sur le serveur ", déjà, ensuite est ce que je dois mettre quelque chose entre les '' de:
- //les fichiers joints a attacher
- $attachement = '';
Escuse moi mais j'ai un peu de mal avec php
|
|
vendredi 21 octobre 2005 à 15:30:59 |
Re : formulaire + image

velsy
|
J'ai envoyé une image gif est voici le message d'erreur: Votre mail a été envoyé Warning: copy(upload/bon_01.gif): failed to open stream: Permission denied in /home/httpd/vhosts/commerces-en-vente.fr/httpdocs/envoi.php on line 114
Demande envoyée
voici mon fichier php:
<?php $nom=$HTTP_POST_VARS['nom']; $prenom=$HTTP_POST_VARS['prenom']; $adresse=$HTTP_POST_VARS['adresse']; $adresse_suite=$HTTP_POST_VARS['adresse_suite']; $code=$HTTP_POST_VARS['code']; $tel=$HTTP_POST_VARS['telephone']; $fax=$HTTP_POST_VARS['fax']; $lieu=$HTTP_POST_VARS['lieu']; $titre=$HTTP_POST_VARS['titre']; $ca=$HTTP_POST_VARS['ca']; $loyer=$HTTP_POST_VARS['loyer']; $prix=$HTTP_POST_VARS['prix']; $texte=$HTTP_POST_VARS['texte']; $coor=$HTTP_POST_VARS['coordonnees']; $mail_contact=$HTTP_POST_VARS['mail_contact']; $site=$HTTP_POST_VARS['site']; $email=$HTTP_POST_VARS['email']; $rubrique=$HTTP_POST_VARS['rubrique']; $type=$HTTP_POST_VARS['type']; $temps=$HTTP_POST_VARS['temps'];
$rubriquedeux=$HTTP_POST_VARS['rubriquedeux']; $rubriquetrois=$HTTP_POST_VARS['rubriquetrois']; $tailleMax = $_POST['taille_max'] ;
/////voici la version Mine $headers = "MIME-Version: 1.0\r\n"; //////ici on détermine le mail en format text $headers .= "Content-type: text/plain; charset=iso-8859-1\r\n"; ////ici on détermine l'expediteur et l'adresse de réponse $headers .= "From: $nom <$email>\r\nReply-to : $nom <$email>\nX-Mailer:PHP"; $subject="$loyer"; $destinataire="moi@moi.com"; $body="commande"; ////contenu du mail $text ="mail : ".$email ."\n"; $text.="Nom : ".$nom ."\n"; $text.="Prénom : ".$prenom ."\n"; $text.="Adresse : ".$adresse .$adresse_suite ."\n"; $text.="code postal et ville : ".$code ."\n"; $text.="Tél. : ".$tel."\n"; $text.="Fax : ".$fax ."\n"; $text.="Dép. : ".$lieu ."\n"; $text.="Titre : ".$titre ."\n"; $text.="C.A : ".$ca ."\n"; $text.="Loyer : ".$loyer ."\n"; $text.="Prix : ".$prix ."\n"; $text.="texte : ".$texte ."\n"; $text.="coordonnées : ".$coor ."\n"; $text.="mail contact : ".$mail_contact ."\n"; $text.="1er rub : ".$rubrique ."\n"; $text.="2e rub : ".$rubriquedeux ."\n"; $text.="3e rub : ".$rubriquetrois ."\n"; $text.="Type : ".$type ."\n"; $text.="Type d'offre : ".$temps ."\n";
if (mail($destinataire,$body, $subject, $text)) { echo "Votre mail a été envoyé"; } else { echo "Une erreur s'est produite"; }
//Détermine si la variable est affectée if(!isset($HTTP_POST_VARS["upload"])) { //si envoye } else { //evite les erreurs undefine variable error_reporting (E_ALL ^ E_NOTICE); //definit la taille => 150ko $MAX_FILE_SIZE = 150000; //fixe le type d extension de fichier $allowed_types = array("image/bmp", "image/gif", "image/pjpeg", "image/jpeg", "image/jpg"); //stockage des proprietes ds des variables $fname = $HTTP_POST_FILES['fichier']['name']; $ftype = $HTTP_POST_FILES['fichier']['type']; $fsize = $HTTP_POST_FILES['fichier']['size']; $ftmp = $HTTP_POST_FILES['fichier']['tmp_name']; //verifie si le type de fichier est bien autorise if(!in_array($ftype, $allowed_types)) { //message si n est pas correct die("<br><center><b>Le format de votre fichier n est pas correct..</b><br>Seul sont accepets =>.bmp, .gif, .jpg, .jpeg<br><a href = 'up.php'><b>Réessayer => Cliquer</b></a></center>"); } //verifie taile if($fize > $MAX_FILE_SIZE) { //si superieur on affiche un message die("<center>Votre fichier est trop gors!!!<br><a href ='up.php'><b>Réessayer => Cliquer</b></a></center><br>"); } //si tout est ok, on copie le fichier ds le repertoire fixe et affiche un mess si tout est ok if(copy($ftmp,"upload/".$fname)) <- ligne 114 { echo"<br><center><b>$fname correctement uploade...</b></center>"; } }
//permet de définir les différentes parties du mail $limite = "----=_Part_" . md5( uniqid ( rand() ) ); //headers du mail $mail_mime = "MIME-Version: 1.0\r\n"; $mail_mime .= "Content-Type: multipart/mixed; boundary=\"".$limite."\"\r\n"; //le corps du message(html) //$texte_mail correspond a votre message au format html <html><head>.....</html> $texte = "This is a multi-part message in MIME format.\n"; $texte .= "Ceci est un message est au format MIME.\n"; //défini la première partie du mail $texte .= "--".$limite."\n"; $texte .= "Content-Type: text/html; charset=\"iso-8859-1\"\n"; $texte .= "Content-Transfer-Encoding: quoted-printable\n "; $texte .= "Content-Disposition: inline \n\n "; $texte .= $texte_mail; $texte .= "\n\n"; $texte .= "\n\n"; //indice de boucle permettant d'ajouter tous les fichiers joints $i=0; //les fichiers joints a attacher $attachement = ''; //Boucle permettant l'ajout de toutes les pieces jointes while($i < sizeof($liste_fichier)) { //permet de récupérer l'extension du fichier afin de définir le type mime $longeur = strlen ($liste_fichier[$i]); $longeur -=3; //on vérifie l'extension /* Pour les besoins de mon formulaire je devait savoir si le fichier était un .doc ou un .pdf il suffit uniquement de modifier cette partie pour ajout n'importe quel type de fichier */ if(substr($liste_fichier[$i],$longeur) == "doc") { $type = "application/jpg"; } else $type = "application/gif"; //on Ajout chaque parties suivantes du mail avec les pieces jointes $attachement .= "--".$limite."\n"; $attachement .= "Content-Type: ".$type." name=".$liste_fichier[$i]."\n"; $attachement .= "Content-Transfer-Encoding: base64\n"; $attachement .= "Content-Disposition: attachment; filename=".$liste_fichier[$i]."\n\n"; //On lit le fichier présent sur le serveur //"rb" permet de lire des fichiers en mode binaire (utile sous windows) $fd = fopen( $liste_fichier[$i], "rb" ); $contenu = fread( $fd, filesize( $liste_fichier[$i] ) ); //encodage en base64 pour que le fichier soit lisible $attachement .= chunk_split(base64_encode($contenu)); $i++; } //on ferme ensuite toutes les parties du mail $attachement .= "\n\n--".$limite."--\n\n"; if ( mail($destinataire,$objet,$texte.$attachement,$mail_mime) ) { //on affiche un message indiquant l'envoi du message echo '<p align="left"><font color="green"face="Arial, Helvetica, sans-serif">Demande envoyée </font></p>'; } else { //on affiche un message indiquant l'echec de l'envoi du message echo '<p align="left"><font color="red" face="Arial, Helvetica, sans-serif"> Echec de l\'envoi de la demande</font></p>'; }
?>
|
|
vendredi 21 octobre 2005 à 15:32:06 |
Re : formulaire + image

coockiesch
|
Ben uploader un fichier sur le serveur, le mieux c'est que tu cherches
un tit tuto sur google et/ou que tu regarde le dernier lien que je t'ai
passé.
Pour ce que tu dois mettre entre les '' c'est le lien vers ton fichier, en relatif
@++
R@f www.allpotes.ch: Photos, humour, vidéos, gags, ... "On dit que seulement 10 personnes au monde comprenaient Einstein. Personne ne me comprends. Suis-je un génie???"
|
|
vendredi 21 octobre 2005 à 15:51:18 |
Re : formulaire + image

velsy
|
Réponse acceptée !
Afin ça marche, merci pour ce gros coup de main
|
|
Cette discussion est classée dans : text, http, post, files, vars
Répondre à ce message
Sujets en rapport avec ce message
formulaire a envois double [ par Henixiz ]
est ce que cest possible d'envoyer un formulaire a 2 e-mail a la fois !voici mon code source$Emaildest="mon_email@et_la.net"; function Formulaire_Tra
Problème de Caddie... Affichage... [ par goldfingers_suisse ]
Bonjour, j'ai un problème de caddie, je suis en train de créer un shop virtuel...Mais j'ai un problème, je n'arrive pas à afficher les données enregis
probleme entre formulaire et base de donnees [ par mictif ]
j'ai un probleme avec mon formulaire que je veux enregistrer dans ma base de données voici l'erreur : Notice: Undefined index: code in g:\easyphp1-8
Formulaire+base de données [ par CHABRY ]
Salut! J'ai un formulaire dans lequel je vais saisir les informations sur un livre, et à partir d'un liste nommeé operation, je peux choisir une opti
envoi de pi??ce jointe par mail [ par arnold002 ]
Bonjour ¨¤ tous,J'ai un gros probl¨¨me pour envoyer une pi¨¨ce jointe par email.Voici mon code : $bouton <FONT color=
Problème de formulaire puis requete [ par pbreaker ]
Bonjour voila je sai pas ce quie ce passe avec ce formulaire mais rien marche alors qu'il me semble correcteDonc y aurai t il qq un qui peut me dire
Données d'une textarea [ par Xaviou ]
Bonjour,J'ai besoin d'un petit coup de pouce:Je crée un formulaire "Contacts" dont voici le source: <form action="s
session et caddie [ par nolog ]
reBonjourj'ai 1 site de 3 pages ecran_Tft15.php, ajouter_a_caddie.php, et voir caddiecomment dois-je declarer la session ouverte et comment passer ses
Aide please ! [ par vinz78 ]
Voila je souhaite envoyer les données d'un formulaire vers un fichier texte déja existant j'ai trouvé un code pour envoyer les champs de mon formulair
Envoyer des données par mail depuis un formulaire [ par vincent4brest ]
Bonjour,Je suis totalement débutant en php et je souhaite récupérer des données d'un formulaires pour me les envoyer par mail, je récupere uniquement
Livres en rapport
|
Derniers Blogs
IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc REACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITERREACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITER par Groc
Une mauvaise utilisation de rx lors de l'écriture d'une couche d'accès à des services peut conduire à des cas embarassants avec des erreurs mal gérées, des appels qui ne partent lorsqu'ils le devraient, et même des résultats incorrects . le tout nuis...
Cliquez pour lire la suite de l'article par Groc SHAREPOINT BLOG SITE, PROBLèME D'ARCHIVESSHAREPOINT BLOG SITE, PROBLèME D'ARCHIVES par junarnoalg
Dernièrement, nous avons migré le site
myTIC
vers un nouveau serveur SharePoint 2010. Dans les contenus que nous vouloins récupérer, nous avions un certain nombre de blogs.
Nous avons utilisé les commandes Power...
Cliquez pour lire la suite de l'article par junarnoalg
Forum
XML ET PHPXML ET PHP par karouani
Cliquez pour lire la suite par karouani
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|