Téléchargement de fichier par formulaire

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Téléchargement de fichier par formulaire

Re: Téléchargement de fichier par formulaire

par CC6952 » 23 juin 2014, 16:46

Malheureusement je ne suis pas parvenu à mes fins. C'est à dire que je modifie un template, donc l'exercice est d'autant plus difficile pour moi vu que je ne pars pas de zéro.

J'ai le même problème pour rendre un menu flottant. Ca marche mais a moitié... C'est pour le site d'un client et c'est très urgent.
Je souhaite donc déléguer... Je suis prête à payer un développeur pour qu'il me corrige le code et me rende fonctionnel ces petites fonctions.

Pouvez-vous m'envoyez un message privé si vous voulez m'aider?

Merci.

Re: Téléchargement de fichier par formulaire

par xTG » 20 juin 2014, 18:10

Donc le code de téléchargement doit se placer dans la condition suivante :
if(!$error)

Re: Téléchargement de fichier par formulaire

par CC6952 » 20 juin 2014, 10:31

<?php

/////////// Add your own email below //////////////// 

	define("WEBMASTER_EMAIL", '[email protected]');
	
	error_reporting (E_ALL ^ E_NOTICE);

//////////////////////////////////////////////////////

	function ValidateEmail($email)
	{
		$regex = '/([a-z0-9_.-]+)'. # name
		'@'. # at
		'([a-z0-9.-]+){2,255}'. # domain & possibly subdomains
		'.'. # period
		'([a-z]+){2,10}/i'; # domain extension 
		
		if($email == '') 
			return false;
		else
			$eregi = preg_replace($regex, '', $email);
		return empty($eregi) ? true : false;
	}

//////////////////////////////////////////////////////

	$post = (!empty($_POST)) ? true : false;
	
	if($post)
	{
		$name 	 = stripslashes($_POST['name']);
		$email 	 = trim($_POST['email']);
		$subject = trim($_POST['subject']);
		$message = stripslashes($_POST['message']);
	
		$error = '';
	
		// Check name
		if(!$name)
			$error .= 'Merci de renseigner votre nom';
	
		// Check email
		if(!$email)
			$error .= 'Merci de renseigner votre e-mail';
	
		if($email && !ValidateEmail($email))
			$error .= 'e-mail invalide';
	
		// Check message
		if(!$message)
			$error .= "Merci de renseigner votre message";
	
		if(!$error)
		{
			$mail = @mail(WEBMASTER_EMAIL, $subject, $message,
				 "From: ".$name." <".$email.">\r\n"
				."Reply-To: ".$email."\r\n"
				."Return-Path: " .$email. "\r\n"
				."MIME-Version: 1.0\r\n"	
				."Content-type: text/html; charset=UTF-8\r\n");
			
			if($mail){
				echo 'OK';

			}else{
				echo 'Envoi impossible';
			}
		}
		else
			echo $error;
	}
?>

Re: Téléchargement de fichier par formulaire

par xTG » 18 juin 2014, 18:20

Montres nous ton code de récupération du formulaire. :)

Re: Téléchargement de fichier par formulaire

par CC6952 » 18 juin 2014, 16:28

Ok, merci j'ai compris le principe mais je ne parviens pas encore à l'appliquer.

J'ai réussi à créer un formulaire qui fonctionne en récupérant les données nom et mail mais je ne sais pas où placer ce bout de code qui permet de télécharger le document une fois les informations du formulaire validées.

Re: Téléchargement de fichier par formulaire

par xTG » 18 juin 2014, 13:33

Ce que tu cherches donc à faire est de forcer un téléchargement.
Voici le principe : http://stackoverflow.com/questions/7263 ... d-with-php (4-5 lignes de code)

Bout de code qui est à placer si tu as toutes les informations en provenance de ton formulaire.

Téléchargement de fichier par formulaire

par CC6952 » 18 juin 2014, 11:53

Bonjour,

Je souhaiterais réaliser un petit formulaire (nom, mail) pour permettre à l'internaute de downloader un fichier. Ainsi on propose un téléchargement d'un fichier (exemple : livre blanc) gratuit en contrepartie de ces informations de contact. Je trouve beaucoup de tuto pour créer des formulaires d'upload de fichiers mais pas de download.
Si vous pouvez m'aider j'en serais vraiment heureux, je suis débutant en php.
Merci