Flux rss
Rechercher : dans
Par : Pertinence Date Nom d'utilisateur
Statut : Non résolu

Formulaire php + fichier joint

Seve, le mardi 31 janvier 2006 à 16:27:54
Bonjour à tous,

Voici mon pb, j'ai réalisé un formulaire en php pour des demandes de stage, seulement, il faudrait que je puisse rajouter une zone d'ajout de fichier joint pour que les gens puissent y mettre un cv et une lettre de motivation... Or c mon premier php et je ne sais aps comment faire.

Merci a ceux qui pourront m'aider.

Sev
Répondre à Seve  Signaler ce message aux modérateurs Aller au dernier message

1


  • 1
    Ce message vous semble utile, votez !
  • Ce message ne vous semble pas utile, votez !
  • Signaler ce message aux modérateurs
crabs, le mardi 31 janvier 2006 à 19:55:07
Salut,
un petit lien :
http://www.php.net/manual/fr/features.file-upload.php
A+, crabs ..., I think Slackware sounds better than 'Microsoft,'
-- Patrick Volkerding - founder and maintainer of Slackware
Répondre à crabs

2


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Seve, le mercredi 1 février 2006 à 10:03:03
bon, j'ai bien compris que je devais utiliser ce code:

<FORM method="POST" ENCTYPE="multipart/form-data">
<INPUT type=hidden name=MAX_FILE_SIZE VALUE=2048>
<INPUT type=file name="nom_du_fichier">
<INPUT type=submit value="Envoyer">
</FORM>

le pb, c que je dois l'intégrer à mon code existant qui est:

<?php

$email_dest = "severine@terifik.fr";

if ($_POST['envoi']) {

$message_remerciement = "Merci de votre demande, nous y répondrons dans les meilleurs délais";

// E-mail headers:
$headers ="MIME-Version: 1.0 \n";
$headers .="From: Demande de stage<stage@wizzz.org>\n";


$headers .="Content-Type: text/html; charset=iso-8859-1 \n";

$subject = "Demande de stage";

$partie_entete = "<html><head>
<meta http-equiv=Content-Type content=text/html; charset=iso-8859-1>
</head>
<body bgcolor=#FFFFFF>";

for ($a=1; $a<= $_POST['nbre_champs_texte']; $a++) {
$partie_champs_texte .= "<font face='Verdana' size='2' color='#003366'>" . $_POST['titre_champ'.$a] . " = " . $_POST['champ'.$a] . "</font><br>";
}

if ($_POST['nbre_zone_email'] != 0) {
$partie_zone_email = "<font face='Verdana' size='2' color='#003366'>" . $_POST['titre_email'] . " = " . $_POST['zone_email'] . "</font><br>";
}

if ($_POST['nbre_zones_texte'] != 0) {
$partie_zone_texte = "<font face='Verdana' size='2' color='#003366'>" . $_POST['titre_zone'] . " = " . $_POST['zone_texte'] . "</font><br>";
$partie_zone_texte = stripslashes($partie_zone_texte);
}

$fin = "</body></html>";

$sortie = $partie_entete . $partie_champs_texte . $partie_zone_email . $partie_zone_texte . $fin;

// Send the e-mail
if (@!mail($email_dest,$subject,$sortie,$headers)) {
echo("Envoi du formulaire impossible");
} // Closing if !mail...

} // Closing if edit
?><html>
<head>
<title>DEMANDE DE STAGE</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="JavaScript"><!-- Hide script from older browsers
function verifSelection() {if (mail_form.champ1.value == "") {
alert("champs obligatoire")
return false
} if (mail_form.champ2.value == "") {
alert("champs obligatoire")
return false
} if (mail_form.champ3.value == "") {
alert("champs obligatoire")
return false
} if (mail_form.champ4.value == "") {
alert("champs obligatoire")
return false
} if (mail_form.zone_email.value == "") {
alert("champs obligatoire")
return false
} if (mail_form.champ5.value == "") {
alert("champs obligatoire")
return false
}

invalidChars = " /:,;'"

for (i=0; i<invalidChars.length; i++) { // does it contain any invalid characters?
badChar = invalidChars.charAt(i)

if (mail_form.zone_email.value.indexOf(badChar,0) > -1) {
alert("Votre adresse e-mail contient des caractères invalides. Veuillez vérifier.")
mail_form.zone_email.focus()
return false
}
}

atPos = mail_form.zone_email.value.indexOf("@",1) // there must be one "@" symbol
if (atPos == -1) {
alert('Votre adresse e-mail ne contient pas le signe "@". Veuillez vérifier.')
mail_form.zone_email.focus()
return false
}

if (mail_form.zone_email.value.indexOf("@",atPos+1) != -1) { // and only one "@" symbol
alert('Il ne doit y avoir qu\'un signe "@". Veuillez vérifier.')
mail_form.zone_email.focus()
return false
}

periodPos = mail_form.zone_email.value.indexOf(".",atPos)

if (periodPos == -1) { // and at least one "." after the "@"
alert('Vous avez oublié le point "." après le signe "@". Veuillez vérifier.')
mail_form.zone_email.focus()
return false
}

if (periodPos+3 > mail_form.zone_email.value.length) { // must be at least 2 characters after the
alert('Il doit y avoir au moins deux caractères après le signe ".". Veuillez vérifier.')
mail_form.zone_email.focus()
return false
}if (mail_form.zone_texte.value == "") {
alert("champs obligatoire")
return false
} } // Fin de la fonction

</script>
</head>

<body bgcolor="c5e52f">
<form name="mail_form" method="post" action="<?=$PHP_SELF?>" onSubmit="return verifSelection()">
<div align="center"></div>
<p align="center">
<?php
if ($message_remerciement) {
echo("<font face=Verdana size=2>");
echo(stripslashes($message_remerciement));
echo("</p></body></html>");
exit();
}
?>
<table width="560" border="0" align="center">
<tr>
<td colspan="2">
<div align="center"><img src="ies/titre-stage.gif" width="218" height="100"></div>
</td>
</tr>
<tr>
<td width="280"><img src="ies/force-tab.gif" width="280" height="1"></td>
<td width="280"><img src="ies/force-tab.gif" width="280" height="1"></td>
</tr>
<p align="center"> </p>
<tr>
<td width="280" bgcolor="#deff42"><font face="Verdana" size="2" color="#666666"><b>Nom</b></font></td>
<td bgcolor="#deff42" width="280">
<input name="champ1" type="text">
</td>
</tr>
<tr>
<td width="280" bgcolor="#deff42"><b><font face="Verdana" size="2" color="#666666">Prénom</font></b></td>
<td bgcolor="#deff42" width="280">
<input name="champ2" type="text">
</td>
</tr>
<tr>
<td width="280" bgcolor="#deff42"><b><font face="Verdana" size="2" color="#666666">Adresse</font></b></td>
<td bgcolor="#deff42" width="280">
<input name="champ3" type="text">
</td>
</tr>
<tr>
<td width="280" bgcolor="#deff42"><b><font face="Verdana" size="2" color="#666666">Ville
- CP</font></b></td>
<td bgcolor="#deff42" width="280">
<input name="champ4" type="text">
</td>
</tr>
<tr>
<td width="280" bgcolor="#deff42"><b><font face="Verdana" size="2" color="#666666">E-mail</font></b></td>
<td bgcolor="#deff42" width="280">
<input name="zone_email" type="text">
</td>
</tr>
<tr>
<td width="280" bgcolor="#deff42"><b><font face="Verdana" size="2" color="#666666">Poste
demandé </font></b></td>
<td bgcolor="#deff42" width="280">
<input name="champ5" type="text">
</td>
</tr>
<tr>
<td width="280" bgcolor="#deff42"><b></b></td>
<td bgcolor="#deff42" width="280">  </td>
</tr>
<tr>
<td valign="top" width="280" bgcolor="#deff42"><b><font face="Verdana" size="2" color="#666666">Remarques</font></b></td>
<td bgcolor="#deff42" width="280">
<textarea name="zone_texte" cols="30" rows="5"></textarea>
</td>
</tr>
<tr>
<td valign="top" width="280">
<input name="nbre_champs_texte" type="hidden" id="nbre_champs_texte" value="5">
<input name="nbre_zones_texte" type="hidden" value="1">
<input name="nbre_zone_email" type="hidden" value="1">
<input name="titre_champ1" type="hidden" value="Nom">
<input name="titre_champ2" type="hidden" value="Prénom">
<input name="titre_champ3" type="hidden" value="Adresse">
<input name="titre_champ4" type="hidden" value="Ville-CP">
<input name="titre_email" type="hidden" value="E-mail">
<input name="titre_champ5" type="hidden" value="Poste demandé">
<input name="titre_zone" type="hidden" value="Remarques">
</td>
<td width="280">
<div align="center">
<input type="reset" name="Reset" value="Effacer">
<input type="submit" name="envoi" value="Envoyer">
</div>
</td>
</tr>
</table>
<div align="center"></div>
</form>
</body>
</html>

et je ne saispas comment l'intégrer, est ce que je dois rajouter d'autres paramètres? bref, je suis dans la panade, je n'y comprends rien du tout!! ce qu'il faut c que le stagiaire puisse ajouter son cv (bt parcourir et bt ajouter) et l'envoyer avec le reste du message.

Merci d'avance si tu peut m'aider.
Sev
Répondre à Seve

3


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
crabs, le mercredi 1 février 2006 à 20:49:04
Salut,
Modifie ton form.
Tu rajoutes ENCTYPE="multipart/form-data" dans la balise form
Tu rajoute un input type="file"
Et après dans le traitement du post (en php) tu rajoutes le traitement du
fichier upload grace à move_upload_file() en ayant vérifié au préalable qu'un
fichier à bien été posté.
Le traitements des autres variables du formulaire ne change pas.
A+, crabs ..., I think Slackware sounds better than 'Microsoft,'
-- Patrick Volkerding - founder and maintainer of Slackware
Répondre à crabs

5


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
seve, le jeudi 2 février 2006 à 18:45:59
ha oui et aussi... j'utilise le code:

if ($_POST['envoi']) {

$message_remerciement = "Merci de votre demande";

pourqu'apparaisse un petit message de remerciement une fois le formulaire validé, sauf que c juste un texte noir sur mon fond vert. y'a t il un code pour que je puisse créer une belle page et rediriger le remerciement vers cette page??

merci encore

j'abuse.... je sais mais je le fais quand meme!
Sev
Répondre à seve

4


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
seve, le jeudi 2 février 2006 à 18:29:38
alors... en ce qui concerne

ENCTYPE="multipart/form-data" dans la balise form
et
input type="file"

pas de soucis, sauf que pour

move_upload_file()

ben.... je sais pas ou je dois le mettre!!
chuis perdue moi dans tout ce code!! ou je comprends rien d'ailleurs!
Répondre à seve

6


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
 lineoze, le lundi 19 novembre 2007 à 15:22:41
bjr
moi j'aimerai savoir comment permettre à un utilisateur de joindre un fichier en pièce jointe et comment je pourrai le recupéré
si tu veux bien maider
Répondre à lineoze
Generateur de formulaire php (Résolu)bonjour, je cherche un generateur de formulaire php sur le net. Est ce que vous pouvez m'en indiquer un ? Seb. MErci www.commentcamarche.net/forum/affich-1667401-generateur-de-formulaire-php
Intégrer un captcha dans un formulaire php (Résolu)Bonjour, mon formulaire est terminé, bien comme je le voulais .... ( ajouter une info dans formulaire php#0 ) et maintenant j'aimerais intégrer une vérification avec un " captcha " mais je ne sais pas quelle commande insérer, ni où la mettre !!!... www.commentcamarche.net/forum/affich-3660372-integrer-un-captcha-dans-un-formulaire-php
Upload d'images par formulaire php, en table (Résolu)Bonjour à tous, Petit problème tout bête d'utilisation des tables pour enregistrer en même temps une vingtaine d'images par formulaire php. Ca marche parfaitement pour une image avec : echo ' www.commentcamarche.net/forum/affich-4865533-upload-d-images-par-formulaire-php-en-table
Fichier joint body part (Résolu)Bonjour, A chaque fois que je reçois un fichier joint "body part" je ne peux pas l'ouvrir, ni l'enregistrer. Merci de m'aider www.commentcamarche.net/forum/affich-3911286-fichier-joint-body-part
Formulaire php choix destinataires (Résolu)Bonjour, Pour aller plus vite et sans obliger les personnes a renter les adresses mails, je souhaiterais faire un formulaire php. Ce que je souhaite faire: Des cases a cocher = destinataire(s) un champs objet = objet une zone de texte = message Ce que... www.commentcamarche.net/forum/affich-6005054-formulaire-php-choix-destinataires
Recepetion de fichiers joints (Résolu)Bonjour à tous j'ai r' çu récemment plusieurs mail avec des fichiers joints mais je n'arrive point al'z'ourvrir; pourriez vous m'indiquer la façon d'faire il s'agit de fichiers au format .jpg , P.D.F et .gif par... www.commentcamarche.net/forum/affich-1381261-recepetion-de-fichiers-joints
Télécharger Copernic Desktop SearchCopernic Desktop Search est un moteur de recherche pour votre ordinateur. Il permet de trouver instantanément et facilement des fichiers, des messages ou des fichiers joints sur votre disque dur. Les résultats sont répartis dans diverses catégories.... www.commentcamarche.net/telecharger/telecharger-34055613-copernic-desktop-search
Toutes les réponses pour « Formulaire php + fichier joint »