> Tous les forums > Forum des Webmasters
 Informations pour envoi de fichiers
Ajouter un message à la discussion
Page : [1] 
Page 1 sur 1
mac_marco
  Posté le 13/01/2019 @ 11:40 
Aller en bas de la page 
Petit astucien

Bonjour.

Lors de la création d'un formulaire de contact avec pièce jointe sur https://www.unesourisetmoi.info/formulairepro/index.php je n'arrive pas à renseigner

la dernière étape. Quelque soit le chemin que je mets, j'ai toujours une erreur.

Sauf si je coche "Ne pas vérifier l'existence du répertoire de téléchargement". Dans ce cas, l'email part et je reçois bien la pièce jointe, mais rien sur le serveur.

Une âme charitable pour m'aider ?

Merci beaucoup et bonne année 2019 !



Modifié par mac_marco le 14/01/2019 06:01
Publicité
Malcolm
 Posté le 13/01/2019 à 18:08 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Salut,

je ne sais pas à quoi ressemble le script (le lien tombe sur une page erronée) mais il faut vérifier qu'il yn'y a pas de pb de droits d'écriture, notamment.

zoulouman
 Posté le 13/01/2019 à 20:02 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucien

Salut,

Le lien est pourris à cause d'une virgule qui traine à la fin. Il faut juste virer cette virgule.

C'est quoi ce site tout bizarre que je soupçonne d'exister uniquement pour récupérer les mails ?
Je n'ai pas regardé le code qu'ils donnent, vu qu'on ne sait pas précisément ce que tu veux.
Mais fais gaffe quand même, c'est pas prudent d'ouvrir son serveur aux membres sans savoir ce qu'on fait. C'est un coup à ce que quelqu'un injecte du code sur ton site et en fasse ce que bon lui fait envie.
Ou alors, il peut flooder ton disque jusqu'à ce qu'il soit plein, vu qu'il ne semble pas y avoir de contrôle de ce côté là...

Première chose, le dossier qui reçoit les fichiers doit être accessible en écriture. Est-ce que c'est le cas ?
Ne vérifie pas les permissions en te connectant en ROOT ! Tu dois avoir les permissions APACHE ou HTTPD ou que sais-je, ça dépend des hébergeurs.

mac_marco
 Posté le 14/01/2019 à 06:32 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Bonjour,

En fait, ce que je souhaite c'est faire un formulaire de contact avec envoi de pièce jointe. J'ai trouvé ce site https://www.unesourisetmoi.info/formulairepro/nuls3.php qui permet de la faire mais je bloque sur la dernière étape car je n'arrive pas à renseigner les champs "Saisir manuellement le répertoire de base" et "Répertoire de téléchargement du fichier".

J'ai donc cocher "Ne pas vérifier l'existence du répertoire de téléchargement" ainsi que la deuxième option "Joindre le fichier à l'email et laisser une copie du fichier dans le

répertoire".

Le formulaire fonctionne bien et je reçois la pièce jointe avec le message mais je n'arrive pas à récupérer la pièce jointe dans mon dossier sur le serveur.

Je précise que je ne mets pas les adresses mail justes, mais des adresses et des noms farfelus.

Je vous mets le code à toutes fins utiles:

<?php

// On vérifie si la fonction ini_set() a été désactivée...

$desactive = ini_get('disable_functions');

if (preg_match("/ini_set/i", "$desactive") == 0) {

// Si elle n'est pas désactivée, on définit ini_set de manière à n'afficher que les erreurs...

ini_set("error_reporting" , "E_ALL & ~E_NOTICE");

}

// Vérifier que le formulaire a été envoyé...

if (isset($_POST['envoi'])) {

// Définir l'indicateur d'erreur sur zéro...

$flag_erreur = 0;

//On commence une session pour enregistrer les variables du formulaire...

session_start();

$_SESSION['champ1'] = $_POST['champ1'];

//Contrôle du spam...

if (eregi("http",$_POST['champ1'])) {

$erreur_champ1 = "Pour raisons de sécurité, ce champ ne peut comporter les caractères <b>http</b>";

$flag_erreur = 1;

}

if (eregi("\[url",$_POST['champ1'])) {

$erreur_champ1 = "Pour raisons de sécurité, ce champ ne peut comporter les caractères <B>[url</b>";

$flag_erreur = 1;

}

if (eregi("<a",$_POST['champ1'])) {

$erreur_champ1 = "Pour raisons de sécurité, ce champ ne peut comporter des liens hypertexte.";

$flag_erreur = 1;

}

if (eregi("\[link",$_POST['champ1'])) {

$erreur_champ1 = "Pour raisons de sécurité, ce champ ne peut comporter les caractères <b>[link</b>";

$flag_erreur = 1;

}

$_SESSION['champ2'] = $_POST['champ2'];

//Contrôle du spam...

if (eregi("http",$_POST['champ2'])) {

$erreur_champ2 = "Pour raisons de sécurité, ce champ ne peut comporter les caractères <b>http</b>";

$flag_erreur = 1;

}

if (eregi("\[url",$_POST['champ2'])) {

$erreur_champ2 = "Pour raisons de sécurité, ce champ ne peut comporter les caractères <B>[url</b>";

$flag_erreur = 1;

}

if (eregi("<a",$_POST['champ2'])) {

$erreur_champ2 = "Pour raisons de sécurité, ce champ ne peut comporter des liens hypertexte.";

$flag_erreur = 1;

}

if (eregi("\[link",$_POST['champ2'])) {

$erreur_champ2 = "Pour raisons de sécurité, ce champ ne peut comporter les caractères <b>[link</b>";

$flag_erreur = 1;

}

$_SESSION['champ3'] = $_POST['champ3'];

//Contrôle du spam...

if (eregi("http",$_POST['champ3'])) {

$erreur_champ3 = "Pour raisons de sécurité, ce champ ne peut comporter les caractères <b>http</b>";

$flag_erreur = 1;

}

if (eregi("\[url",$_POST['champ3'])) {

$erreur_champ3 = "Pour raisons de sécurité, ce champ ne peut comporter les caractères <B>[url</b>";

$flag_erreur = 1;

}

if (eregi("<a",$_POST['champ3'])) {

$erreur_champ3 = "Pour raisons de sécurité, ce champ ne peut comporter des liens hypertexte.";

$flag_erreur = 1;

}

if (eregi("\[link",$_POST['champ3'])) {

$erreur_champ3 = "Pour raisons de sécurité, ce champ ne peut comporter les caractères <b>[link</b>";

$flag_erreur = 1;

}

$_SESSION['zone_email1'] = $_POST['zone_email1'];

//Contrôle du spam...

if (eregi("http",$_POST['zone_email1'])) {

$erreur_email1 = "Pour raisons de sécurité, ce champ ne peut comporter les caractères <b>http</b>";

$flag_erreur = 1;

}

if (eregi("\[url",$_POST['zone_email1'])) {

$erreur_email1 = "Pour raisons de sécurité, ce champ ne peut comporter les caractères <B>[url</b>";

$flag_erreur = 1;

}

if (eregi("<a",$_POST['zone_email1'])) {

$erreur_email1 = "Pour raisons de sécurité, ce champ ne peut comporter des liens hypertexte.";

$flag_erreur = 1;

}

if (eregi("\[link",$_POST['zone_email1'])) {

$erreur_email1 = "Pour raisons de sécurité, ce champ ne peut comporter les caractères <b>[link</b>";

$flag_erreur = 1;

}

//Evaluation du bouton 1 ...

switch($_POST['bouton1']) {

case "Oui":

$_SESSION['bouton1'] = "Oui";

break;

case "Non":

$_SESSION['bouton1'] = "Non";

break;

default:

$_SESSION['bouton1'] = "";

} // Fin du switch...

//Evaluation du bouton 2 ...

switch($_POST['bouton2']) {

case "Par mail":

$_SESSION['bouton2'] = "Par mail";

break;

case "Par téléphone":

$_SESSION['bouton2'] = "Par téléphone";

break;

default:

$_SESSION['bouton2'] = "";

} // Fin du switch...

//Enregistrement des zones de texte...

$_SESSION['zone_texte1'] = $_POST['zone_texte1'];

//Contrôle du spam...

if (eregi("http",$_POST['zone_texte1'])) {

$erreur_texte1 = "Pour raisons de sécurité, ce champ ne peut comporter les caractères <b>http</b>";

$flag_erreur = 1;

}

if (eregi("\[url",$_POST['zone_texte1'])) {

$erreur_texte1 = "Pour raisons de sécurité, ce champ ne peut comporter les caractères <B>[url</b>";

$flag_erreur = 1;

}

if (eregi("<a",$_POST['zone_texte1'])) {

$erreur_texte1 = "Pour raisons de sécurité, ce champ ne peut comporter des liens hypertexte.";

$flag_erreur = 1;

}

if (eregi("\[link",$_POST['zone_texte1'])) {

$erreur_texte1 = "Pour raisons de sécurité, ce champ ne peut comporter les caractères <b>[link</b>";

$flag_erreur = 1;

}

// Nbre de zones de sélection de fichiers -1 car on commence le tableau à zéro...

$nbre_zones_fichiers = 2 - 1;

// Répertoire de téléchargement du fichier XXXXXXXXXXXXXXXXXXXXXXXX...

$repertoire = "/dowload";

// Taille maximale autorisée en octets...

$taille_max_fichier = 4096000;

// Extensions de fichiers autorisées...

$extensions_autorisees = array("","jpg","jpeg","zip","","","pdf","");

// Définir l\'icone apparaissant en cas d\'erreur...

// Définir sur 0 pour afficher un petit x de couleur rouge.

// Définir sur 1 pour afficher l\'image d\'une croix rouge telle que celle utilisée dans l\'assistant

// Si vous utilisez l\'option 1, l\'image de la croix rouge \'icone.gif\' doit se trouver dans le répertoire \'images\',

// ce dernier devant se trouver au même niveau que votre formulaire...

$flag_icone = 0;

// On vérifie si $flag_icone est défini sur 0 ou 1...

if ($flag_icone == 0) {

$icone = "<b><font size=\"3\" face=\"Arial, Verdana, Helvetica, sans-serif\" color=\"#CC0000\">x</font></b>";

} else {

$icone = "<img src=\"images/icone.gif\"";

}

//Validation PHP des éléments du formulaire...

if ($_POST['champ1'] == "") {

$erreur_champ1 = "Champs obligatoire";

$flag_erreur = 1;

} // Fin du if...

if ($_POST['champ2'] == "") {

$erreur_champ2 = "Champs obligatoire";

$flag_erreur = 1;

} // Fin du if...

if ($_POST['zone_email1'] == "") {

$erreur_email1 = "Champs obligatoire";

$flag_erreur = 1;

} else {

if (!eregi("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$", $_POST['zone_email1'])){

$erreur_email1 = "Votre adresse e-mail 1 n'est pas complète ou contient des caractères invalides.";

$flag_erreur = 1;

} // Fin du if...

} // Fin du else...

if (!isset($_POST['bouton1'])) {

$erreur_bouton1 = "Champs obligatoire";

$flag_erreur = 1;

} // Fin du if...

if (!isset($_POST['bouton2'])) {

$erreur_bouton2 = "Champs obligatoire";

$flag_erreur = 1;

} // Fin du if...

if ($_POST['zone_texte1'] == "") {

$erreur_texte1 = "Champs obligatoire";

$flag_erreur = 1;

} // Fin du if...

//Envoi avec fichier...

if (($_FILES['fichier']['name']['0'] !="") && is_array($_FILES)) {

if (!is_dir($repertoire)) {

$erreur_fichier[0] = "Le répertoire de téléchargement spécifié n'existe pas!";

$flag_erreur = 1;

} else {

// Vérifier si le répertoire a les droits en écriture...

if (!is_writeable($repertoire)) {

$erreur_fichier[0] = "Le répertoire spécifié n'a pas les droits d'accès en écriture.";

$flag_erreur = 1;

} else {

// On boucle x nbre de fois, sauf si aucun fichier n'a été sélectionné...

for ($u = 0; $u <= $nbre_zones_fichiers, $_FILES['fichier']['name'][$u] != ""; $u++) {

// Vérifier les éventuelles erreurs de téléchargement du fichier...

if ($_FILES['fichier']['error'][$u] != 0) {

switch ($_FILES['fichier']['error'][$u]) {

//case UPLOAD_ERR_OK:

case 0;

break;

//case UPLOAD_ERR_INI_SIZE:

case 1;

$erreur_fichier[$u] = "Le fichier téléchargé dépasse la taille maximale autorisée par le serveur.";

$flag_erreur = 1;

break;

//case UPLOAD_ERR_FORM_SIZE:

case 2;

$erreur_fichier[$u] = "Le fichier téléchargé dépasse la taille maximale autorisée par le formulaire.";

$flag_erreur = 1;

break;

//case UPLOAD_ERR_PARTIAL:

case 3;

$erreur_fichier[$u] = "Le fichier n'a été téléchargé que partiellement.";

$flag_erreur = 1;

break;

//case UPLOAD_ERR_NO_FILE:

case 4;

$erreur_fichier[$u] = "Aucun fichier n'a été téléchargé.";

$flag_erreur = 1;

break;

// case UPLOAD_ERR_NO_TMP_DIR:

case 6:

$erreur_fichier[$u] = "Répertoire temporaire manquant.";

$flag_erreur = 1;

break;

// case UPLOAD_ERR_CANT_WRITE:

case 7:

$erreur_fichier[$u] = "Echec d'écriture du fichier";

$flag_erreur = 1;

break;

default:

$erreur_fichier[$u] = "Erreur de fichier inconnue";

$flag_erreur = 1;

} // fin du switch

} else {

// On vérifie si la taille du fichier ne dépasse pas le maximum autorisé

if ($_FILES['fichier']['size'][$u] > $taille_max_fichier) {

$erreur_fichier[$u] = "Le fichier téléchargé dépasse la taille maximum autorisée.";

$flag_erreur = 1;

} else {

// On met le nom du fichier en minuscules...

$nom_fichier = strToLower($_FILES['fichier']['name'][$u]);

// On recherche la position du point dans le nom de fichier...

$dernPos = strRChr($nom_fichier, ".");

// On extrait l'extension du fichier...

$extension = strToLower(subStr($dernPos, 1));

// Si l'extension n'existe pas ou qu'elle ne fait pas partie des extensions autorisées...

if (($dernPos == "") OR (in_array($extension, $extensions_autorisees) == false)) {

$erreur_fichier[$u] = "L'extension de fichier spécifiée n'est pas autorisée.";

$flag_erreur = 1;

} else {

//On extrait seulement le nom du fichier sans l'extension, $dernPos donnant l'extension avec le point.

$posExtension = strpos($nom_fichier, $dernPos);

$nom_sans_extension = substr($nom_fichier,0,$posExtension);

// On ajoute au nom du fichier un numéro unique puis l'extension du fichier...

$nom_unique[$u] = $nom_sans_extension. "_ID_" . uniqid(rand()).$dernPos;

} // Fin du else

} // Fin du else

}// Fin du else

} // Fin de la boucle for... ()

// On boucle une seconde fois, et on ne copie les fichiers que si aucun d'eux n'a retourné d'erreurs...

$u = 0;

while ((($u<= $nbre_zones_fichiers) && ($_FILES['fichier']['name'][$u] != "") && ($flag_erreur !=1))) {

// On déplace le fichier téléchargé du répertoire temporaire sur le répertoire spécifié

if (!move_uploaded_file($_FILES['fichier']['tmp_name'][$u], $repertoire."/".$nom_unique[$u])) {

$erreur_move_uploaded[$u] = "Impossible de déplacer le fichier dans le répertoire de destination...";

$flag_erreur = 1;

} // Fin du if

$u++;

} // Fin de la boucle while

}// Fin du else

}// Fin du else

} // Fin du if (($_FILES['fichier']['name']['0'] !="") && is_array($_FILES)) {

// N'envoyer le formulaire que s'il n'y a pas d'erreurs...

if ($flag_erreur == 0) {

// Addresse de réception du formulaire

$email_dest = "adresse@monsite.ch";

$sujet = "Prise de contact";

if (($_FILES['fichier']['name']['0'] !="") && is_array($_FILES)) {

// En-têtes spécifiques de l'e-mail AVEC pièce jointe:

// Génération d'une chaîne de délimitation

$semi_rand = md5(time());

$mime_boundary = "==Multipart_Boundary_x{$semi_rand}x";

$entetes ="MIME-Version: 1.0 \n";

$entetes .="From: Mon site web<info@monsite.ch>\n";

$entetes .="Content-Type: multipart/mixed;\n";

$entetes .=" boundary=\"{$mime_boundary}\"";

$partie_entete = "Message au format MIME.\n\n" .

"--{$mime_boundary}\n" .

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

"Content-Transfer-Encoding: 7bit\n\n" .

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

} else { // En-têtes de l'e-mail sans envoi de fichier...

$entetes ="MIME-Version: 1.0 \n";

$entetes .="From: Mon site web<info@monsite.ch>\n";

$entetes .="Return-Path: Mon site web<info@monsite.ch>\n";

$entetes .="Reply-To: Mon site web<info@monsite.ch>\n";

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

$partie_entete = "<html>

<head>

<title>Formulaire</title>

<meta http-equiv=Content-Type content=text/html; charset=iso-8859-1>

</head>

<body bgcolor=#FFFFFF>\n";

} // fin du else...

//Partie HTML de l'e-mail...

$partie_champs_texte .= "<font face=\"Verdana\" size=\"2\" color=\"#003366\">Nom = " . $_SESSION['champ1'] . "</font><br>\n";

$partie_champs_texte .= "<font face=\"Verdana\" size=\"2\" color=\"#003366\">Prénom = " . $_SESSION['champ2'] . "</font><br>\n";

$partie_champs_texte .= "<font face=\"Verdana\" size=\"2\" color=\"#003366\">Téléphone = " . $_SESSION['champ3'] . "</font><br>\n";

$partie_zone_email .= "<font face=\"Verdana\" size=\"2\" color=\"#003366\">Email = " . $_SESSION['zone_email1'] . "</font><br>\n";

$partie_boutons .= "<font face=\"Verdana\" size=\"2\" color=\"#003366\">Newsletter = " . $_SESSION['bouton1'] . "</font><br>\n";

$partie_boutons .= "<font face=\"Verdana\" size=\"2\" color=\"#003366\">Contactez-moi = " . $_SESSION['bouton2'] . "</font><br>\n";

$partie_zone_texte .= "<font face=\"Verdana\" size=\"2\" color=\"#003366\">Message = " . $_SESSION['zone_texte1'] . "</font><br>\n";

// Enfin, on indique le nom et l'emplacement de la pièce jointe sur le serveur.

if (($_FILES['fichier']['name']['0'] !="") && is_array($_FILES)) {

// On boucle x nbre de fois, sauf si aucun fichier n'a été sélectionné...

for ($u = 0; $u <= $nbre_zones_fichiers, $_FILES['fichier']['name'][$u] != ""; $u++) {

$a = $u + 1;

$partie_fichier .= "<font face=\"Verdana\" size=\"2\" color=\"#003366\">Pièce jointe $a : " . $nom_unique[$u] . "</font><br>";

} // Fin de la boucle for...

$partie_fichier .= "<font face=\"Verdana\" size=\"2\" color=\"#003366\">Pièces jointes conservées dans le répertoire : /upload</font><br>";

} // Fin du if...

$fin = "<!--SlideIn-->

<script language='javascript' type='text/javascript' src='http://a01.gestionpub.com/GP29a4247fc3293983f'></script>

</body></html>\n\n";

// Si envoi de fichier...

if (($_FILES['fichier']['name']['0'] !="") && is_array($_FILES)) {

// Construction de la pièce jointe...

for ($u = 0; $u <= $nbre_zones_fichiers, $_FILES['fichier']['name'][$u] != ""; $u++) {

$type = $_FILES['fichier']['type'][$u];

// Lecture du fichier ('rb' = lecture en binaire)

$fichier = fopen($repertoire . "/" . $nom_unique[$u],'rb');

$donnees = fread($fichier,filesize($repertoire . "/" . $nom_unique[$u]));

fclose($fichier);

// Encodage Base64 des données

$donnees = chunk_split(base64_encode($donnees));

// Partie piece jointe de l'e-mail

$piece_jointe .= "--{$mime_boundary}\n" .

"Content-Type: {$type};\n" .

" name=\"{$nom_unique[$u]}\"\n" .

"Content-Disposition: attachment;\n" .

" filename=\"{$nom_unique[$u]}\"\n" .

"Content-Transfer-Encoding: base64\n\n" .

$donnees . "\n\n";

} // Fin de la boucle for...

// Fin de la pièce jointe...

$piece_jointe .= "--{$mime_boundary}--\n";

$sortie = $partie_entete . $partie_champs_texte . $partie_zone_email . $partie_listes . $partie_boutons . $partie_cases . $partie_zone_texte . $partie_fichier . $fin . $piece_jointe;

} else {

$sortie = $partie_entete . $partie_champs_texte . $partie_zone_email . $partie_listes . $partie_boutons . $partie_cases . $partie_zone_texte . $fin;

}

// Send the e-mail

if (@!mail($email_dest,$sujet,$sortie,$entetes)) {

echo("Envoi du formulaire impossible");

exit();

} else {

// Rediriger vers la page de remerciement

header("http://remerciements.html");

exit();

} // Fin else

} // Fin du if ($flag_erreur == 0) {

} // Fin de if POST

?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<!-- Assistant de création de formulaires PHP pour les nuls - Version Pro 2.0

Auteur : Frédéric Ménard (assistant@f1-fantasy.net)

Site : http://www.f1-fantasy.net/assistant

-->

<head>

<title>Formulaire</title></head><body><form name="mail_form" method="post" action="<?php echo($_SERVER['PHP_SELF']); ?>" enctype="multipart/form-data">

<div align="center"><font size="2" face="Verdana, Arial, Helvetica, sans-serif, Tahoma"><strong>Formulaire

de contact</strong></font></div><br></br><table align="center" width="566" border="0" cellspacing="0" cellpadding="0">

<tr>

<td height="16"><div align="center">

<font color="#CC0000" size="2" face="Verdana, Arial, Helvetica, sans-serif, Tahoma"><strong><?php

if ($erreur_champ1) {

echo(stripslashes($erreur_champ1));

} else {

if ($erreur_champ2) {

echo(stripslashes($erreur_champ2));

} else {

if ($erreur_champ3) {

echo(stripslashes($erreur_champ3));

} else {

if ($erreur_email1) {

echo(stripslashes($erreur_email1));

} else {

if ($erreur_bouton1) {

echo(stripslashes($erreur_bouton1));

} else {

if ($erreur_bouton2) {

echo(stripslashes($erreur_bouton2));

} else {

if ($erreur_texte1) {

echo(stripslashes($erreur_texte1));

} else {

if ($erreur_fichier[0]) {

echo(stripslashes($erreur_fichier[0]));

} else {

if ($erreur_fichier[1]) {

echo(stripslashes($erreur_fichier[1]));

} else {

} // Fin du else...

} // Fin du else...

} // Fin du else...

} // Fin du else...

} // Fin du else...

} // Fin du else...

} // Fin du else...

} // Fin du else...

} // Fin du else...

?>

</strong></font>

</div></td>

</tr>

</table>

<p align="center"></p><table width="566" border="0" align="center"><tr>

<td width="140"><div align="right"><font face="Verdana" size="2">Nom</font></div></td>

<td align="center" valign="middle" width="30">

<?php

if ($erreur_champ1) {

echo($icone);

}

?>

</td>

<td><input name="champ1" type="text" value="<?php echo(stripslashes($_SESSION['champ1'])); ?>"></input></td>

</tr></table><table width="566" border="0" align="center"><tr>

<td width="140"><div align="right"><font face="Verdana" size="2">Prénom</font></div></td>

<td align="center" valign="middle" width="30">

<?php

if ($erreur_champ2) {

echo($icone);

}

?>

</td>

<td><input name="champ2" type="text" value="<?php echo(stripslashes($_SESSION['champ2'])); ?>"></input></td>

</tr></table><table width="566" border="0" align="center"><tr>

<td width="140"><div align="right"><font face="Verdana" size="2">Téléphone</font></div></td>

<td align="center" valign="middle" width="30">

<?php

if ($erreur_champ3) {

echo($icone);

}

?>

</td>

<td><input name="champ3" type="text" value="<?php echo(stripslashes($_SESSION['champ3'])); ?>"></input></td>

</tr></table><table width="566" border="0" align="center"><tr>

<td width="140"><div align="right"><font face="Verdana" size="2">Email</font></div></td>

<td width="30" align="center" valign="middle">

<?php

if ($erreur_email1) {

echo($icone);

}

?>

</td>

<td><input name="zone_email1" type="text" value="<?php echo(stripslashes($_SESSION['zone_email1'])); ?>"></input></td>

</tr></table><table width="566" border="0" align="center"><tr>

<td width="140"><div align="right"><font face="Verdana" size="2">Newsletter</font></div></td>

<td width="30" align="center" valign="middle">

<?php

if ($erreur_bouton1) {

echo($icone);

}

?>

</td>

<td><input type="radio" name="bouton1" value="Oui"<?php

if ($_SESSION['bouton1'] == "Oui") {

echo(" checked");

}

?>></input><font face="Verdana" size="2">Oui</font><br /><input type="radio" name="bouton1" value="Non"<?php

if ($_SESSION['bouton1'] == "Non") {

echo(" checked");

}

?>></input><font face="Verdana" size="2">Non</font></td></tr></table><table width="566" border="0" align="center"><tr>

<td width="140"><div align="right"><font face="Verdana" size="2">Contactez-moi</font></div></td>

<td width="30" align="center" valign="middle">

<?php

if ($erreur_bouton2) {

echo($icone);

}

?>

</td>

<td><input type="radio" name="bouton2" value="Par mail"<?php

if ($_SESSION['bouton2'] == "Par mail") {

echo(" checked");

}

?>></input><font face="Verdana" size="2">Par mail</font><br /><input type="radio" name="bouton2" value="Par téléphone"<?php

if ($_SESSION['bouton2'] == "Par téléphone") {

echo(" checked");

}

?>></input><font face="Verdana" size="2">Par téléphone</font></td></tr></table><table width="566" border="0" align="center"><tr>

<td width="140" valign="top"><div align="right"><font face="Verdana" size="2">Message</font></div></td>

<td width="30" align="center" valign="top">

<?php

if ($erreur_texte1) {

echo($icone);

}

?>

</td>

<td><textarea name="zone_texte1" cols="45" rows="10"><?=stripslashes($_SESSION['zone_texte1']);?></textarea></td>

</tr></table><table width="566" border="0" align="center"><tr>

<td width="140" align="right"><font face="Verdana" size="2">Fichier 1<input name="MAX_FILE_SIZE" type="hidden" value="4096000"></input></font></td>

<td width="30" align="center" valign="middle">

<?php

if ($erreur_fichier[0]) {

echo($icone);

}

?>

</td>

<td><input type="file" name="fichier[]" id="fichier1"></input>

<font face="Verdana" size="2">(4 Mo maximum)</font></td>

</tr></table><table width="566" border="0" align="center"><tr>

<td width="140" align="right"><font face="Verdana" size="2">Fichier 2<input name="MAX_FILE_SIZE" type="hidden" value="4096000"></input></font></td>

<td width="30" align="center" valign="middle">

<?php

if ($erreur_fichier[1]) {

echo($icone);

}

?>

</td>

<td><input type="file" name="fichier[]" id="fichier2"></input>

<font face="Verdana" size="2">(4 Mo maximum)</font></td>

</tr></table><table width="566" border="0" align="center"><tr>

<td valign="top"><div align="center">

<input type="reset" name="Reset" value=" Effacer "></input>

<input type="submit" name="envoi" value="Envoyer"></input>

</div></td></tr></table><div align="center"><input name="nbre_fichiers" type="hidden" id="nbre_fichiers" value="2"></input></div></form><!--SlideIn-->

<script language='javascript' type='text/javascript' src='http://a01.gestionpub.com/GP29a4247fc3293983f'></script>

</body></html>

Mon problème est donc de savoir comment trouver le chemin du répertoire de base.

Merci beaucoup et bonne journée.

Malcolm
 Posté le 14/01/2019 à 07:19 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Salut,

la fonction « eregi » est dépréciée donc ne devrait plus être utilisée. De même, les extensions vides sont permises (dans le array) et finalement refusées plus loin... ce générateur aurait bien besoin d’une mise à niveau.

j’ai testé ton générateur formulaire ce matin, j’avoue que je n‘ai pas compris pourquoi j’ai dû renseigner les 3 champs pour passer à l’étape suivante... regarde dans quel dossier est ton site, si tu ne sais pas tu peux faire une simple page « queldossier.php » contenant le code <?php echo getcwd(); ?>

cela te donnera le vrai chemin absolu du serveur où est enregistré ce fichier.

mac_marco
 Posté le 14/01/2019 à 19:02 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Malcolm a écrit :

Salut,

la fonction « eregi » est dépréciée donc ne devrait plus être utilisée. De même, les extensions vides sont permises (dans le array) et finalement refusées plus loin... ce générateur aurait bien besoin d’une mise à niveau.

j’ai testé ton générateur formulaire ce matin, j’avoue que je n‘ai pas compris pourquoi j’ai dû renseigner les 3 champs pour passer à l’étape suivante... regarde dans quel dossier est ton site, si tu ne sais pas tu peux faire une simple page « queldossier.php » contenant le code <?php echo getcwd(); ?>

cela te donnera le vrai chemin absolu du serveur où est enregistré ce fichier.

Salut Malcolm.

C'est du chinois tout ça pour moi !

En fait, est-ce que je peux utiliser ce code sans trop de problème ?

Ce que je ne comprend pas, c'est que je ne peux pas finaliser le formulaire si je ne remplis pas les deux premier champs.

Par contre, si je coche l'option "Ne pas vérifier l'existence du répertoire de téléchargement", le formulaire fonctionne et je reçois

la pièce jointe dans ma messagerie.

Alors, c'est quoi ce répertoire de base ???

Merci.

Malcolm
 Posté le 14/01/2019 à 22:14 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

je ne suis pas l'auteur de ce template, je ne peux donc pas répondre sur le coup de remplir les 2 champs ... je présume qu'il doit y en avoir un des 2 qui dit dans quel dossier est le site, et l'autre quel sous-dossier du site (et donc du premier champ) doit contenir les futures pièces jointes.

L'utiliser sans trop de problèmes, oui et non : si une fonction est dépréciée, cela veut dire qu'elle est encore tolérée (malgré le fait qu'elle remonte une erreur) mais ça ne veut pas dire qu'en cas de mise à jour de l'environnement, elle sera encore tolérée auquel cas le script ne fonctionnera tout simplement plus.

Donc "dans l'immédiat", oui ça semble utilisable, mais à moyen/long terme, probablement non, sauf si l'auteur fait une mise à jour de son outil.

mac_marco
 Posté le 16/01/2019 à 06:17 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Merci à tous !

Je vais simplement essayer de contacter le support du formulaire.

Je laisse le poste ouvert au cas ou il y aurait d'autres réponses.

Encore merci et bonne journée.

Page : [1] 
Page 1 sur 1

Vous devez être connecté pour participer à la discussion.
Cliquez ici pour vous identifier.

Vous n'avez pas de compte ? Créez-en un gratuitement !
Recevoir PC Astuces par e-mail


La Lettre quotidienne +226 000 inscrits
Avec l'actu, des logiciels, des applis, des astuces, des bons plans, ...

Les bonnes affaires
Une fois par semaine, un récap des meilleurs offres.

Les fonds d'écran
De jolies photos pour personnaliser votre bureau. Une fois par semaine.

Les nouveaux Bons Plans
Des notifications pour ne pas rater les bons plans publiés sur le site.

Les bons plans du moment PC Astuces

Tous les Bons Plans
39,99 €Amazon Fire TV Stick 4K Ultra HD à 39,99 €
Valable jusqu'au 20 Septembre

En ce moment, l'Amazon Fire TV Stick 4K Ultra HD est à 44,99 € livrée gratuitement chez Boulanger au lieu de 59,99 €. Cette clé à brancher sur votre TV offre une sortie en 4K pour tous vos contenus en ultra haute définition, est compatible Alexa et possède une télécommande améliorée avec plus de boutons de contrôle. Avec cette clé, vous allez pouvoir voir facilement Prime Video, Netflix, Disney+, YouTube, Spotify, MyCanal Molotov sur votre TV.


> Voir l'offre
39,99 €SSD interne M.2 NVMe Kingston NV1 500 Go à 39,99 €
Valable jusqu'au 20 Septembre

Cdiscount fait une promotion sur le SSD interne M.2 NVMe Kingston NV1 500 Go qui passe à 39,99 € avec le code promo SEPT au lieu de plus de 55 € ailleurs. Il offre des vitesses de lecture allant jusqu'à 2100 Mo/s et 1700Mo/s en écriture. La livraison est gratuite.


> Voir l'offre
52,99 €SSD WD Black SN750 500 Go (NMVe M.2, 3470 Mo/s) à 52,99 € avec le code SEPT
Valable jusqu'au 20 Septembre

Cdiscount fait une promotion sur le SSD WD Black SN750 500 Go (NMVe M.2) qui passe à 52,99 € avec le code promo SEPT alors qu'on le trouve ailleurs à partir de 74 €. Ce SSD utilise une interface M.2 NVMe PCIe Gen3 x 4 pour une connexion simple et des performances exceptionnelles : jusqu’à 3 470 Mo/s en lecture séquentielle et jusqu’à 3 000 Mo/s en écriture séquentielle. Le SSD est doté de la technologie 3D TLC NAND haute densité offrant une endurance d’écriture durable et assorti d’une garantie de cinq ans.


> Voir l'offre

Sujets relatifs
Remplacer des ActiveX pour portabilité (lecture/écriture de fichiers ...)
? Astuce pour un aperçu des fichiers distants [serveur FTP]
associer 2 fichiers html pour iphone.
Fichiers Excel en HTML pour application en ligne
besoin d'informations pour la création d'1 siteweb
que dois je faire avec ses fichiers pour du flash
lecteur fichiers audio pour IE et Firefox
Un outil pour géneration des fichiers sitemap.xml
Problème pour lire fichiers pdf sur Internet
Recherche script pour échange de fichiers privé
Plus de sujets relatifs à Informations pour envoi de fichiers
 > Tous les forums > Forum Forum des Webmasters