2010-08-27 7 views
1

Je crée un formulaire HTML pour le site Web de mon entreprise. Ce formulaire comprendra deux champs de texte, un nom et une adresse e-mail. Lorsque l'utilisateur appuie sur le bouton "Soumettre", j'aimerais que le téléchargement d'un fichier commence. (Le formulaire consiste à recueillir des informations sur l'utilisateur avant de télécharger notre nouvelle version bêta.) Comment puis-je faire cela? Je suis un débutant complet au développement web et je me retrouve perdu.Comment faire pour envoyer un formulaire HTML effectuer plusieurs actions?

Modifier: Les informations collectées seront envoyées par courrier électronique.

Merci!

+0

Utilisez-vous un langage côté serveur (PHP, Ruby, Python, Java)? Besoin d'un peu plus d'informations sur votre environnement avant de donner une réponse. –

+0

Je voudrais éviter cela si possible ... Je ne suis pas très versé. Cependant, j'ai fait juste une petite quantité de php dans le passé si cela aide. – Phil

+1

Comment aimeriez-vous que vos informations soient collectées? Stocké dans un fichier texte? Dans une base de données? Envoyé par courrier électronique? Quoi qu'il en soit, pour tout type de traitement de serveur, je crains que vous ayez besoin d'un langage côté serveur. –

Répondre

1

Vous avez besoin d'un script pour traiter les entrées utilisateur.

<?php 
process_data(); 

// Taken from http://php.net/manual/en/function.header.php 
// We'll be outputting an PDF 
header('Content-type: application/pdf'); 

// It will be called downloaded.pdf 
header('Content-Disposition: attachment; filename="downloaded.pdf"'); 

// The PDF source is in original.pdf 
readfile('original.pdf'); 
?> 

Vous pouvez déplacer votre « original.pdf » à un endroit à l'extérieur de la racine du document de votre serveur Web, ce qui empêche les utilisateurs de télécharger le fichier directement.

0

En supposant que vous parlez de site html statique (manque de balises), je dirais qu'il suffit d'utiliser javascript.

gérer l'événement onsubmit.

La question est aussi pourquoi voudriez-vous avoir ces champs, pour la validation? contre quoi?? Pour le stockage? où allez-vous le stocker.

Si pour la validation, il suffit de rediriger la page vers l'emplacement de téléchargement (voir location.assign()).

Mais encore une fois, si vous fournissez plus de détails, il serait plus facile de savoir où votre question appartient.

MISE À JOUR

Si vous voulez envoyer des e-mails s'il vous plaît lire this, si cela ne répond pas à votre question (vous ne disposez pas d'un outil js externe qui envoie des e-mails), alors vous avez probablement pas d'autre choix mais pour activer le script côté serveur tel que ASP.NET ou php.

+0

Désolé. Je suppose que je n'étais pas très clair. En appuyant sur soumettre, j'aimerais que deux choses se produisent. Je voudrais prendre l'information recueillie et l'envoyer par courriel à une adresse. J'aimerais aussi que l'utilisateur soit redirigé vers un téléchargement de fichier. Merci pour votre aide, j'apprécie beaucoup. – Phil

+0

réponse mise à jour, lors de l'événement onsubmit, utilisez location.assign ou window.location. en ce qui concerne les e-mails voir la mise à jour sur ma question. – Shimmy

Questions connexes