Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > Langages serveur > ASP
ASP Forum sur la programmation ASP. Avant de poster : Cours ASP, FAQ ASP
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 30/12/2006, 15h24   #1
Membre actif
 
Homme Arnaud
Inscription : décembre 2006
Messages : 871
Détails du profil
Informations personnelles :
Nom : Homme Arnaud
Âge : 27
Localisation : France, Seine Maritime (Haute Normandie)

Informations forums :
Inscription : décembre 2006
Messages : 871
Points : 195
Points : 195
Par défaut Formulaire envoyé avec ASP

Bonjour,

Je suis actuellement en train de faire un mémoire technique sur les technologies PHP/ASP/.NET.

Pour illustrer ce mémoire technique, j'ai réalisé un exemple de script pour le PHP et (j'aimerai) pour l'ASP.

Ce script permet l'envoie d'un formulaire par un email via PHP ou ASP.

J'ai créé la page du formulaire en HTML, puis j'ai fais le script de traitement avec PHP.

J'aimerai faire la même chose avec ASP. Le problème est qu'en ASP je n'y connais pas grand chose et le temps m'est compté pour finir mon mémoire.

Pourriez vous m'aider à l'élaboration du script de traitement en ASP pour mon formulaire ?

Voici ma page de formulaire en HTML :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<html>
    <head>
        <title>Exemple</title>
    </head>
    <body>
       <form name=«main» action=«formulaire.php» method=« post»>
          <br>
          Entrez votre nom :
          <br>
          <input type=«text» name=«nom» size=«30»>
          <br>
          Saisissez votre adresse e-mail :
          <br>
          <input type=«text» name=«email» size=«30»>
          <br>
          Objet du message :
          <br>
          <input type=«text» name=«sujet» size=«30»>
          <br>
          Saisissez votre message :
          <br>
          <textarea cols=«50» rows=«10» name=«message»></textarea>
          <br>
          <input type=«submit» name=«Submit» value=«Envoyer»>
       </form>
    </body>
</html>
Voici le script de traitement en PHP :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?php
  $sujet = $_POST[‘sujet’];
  // Création d’une variable. Alimentation de cette variable grâce aux informations envoyées par le formulaire. Ici l’information enregistrée dans la variable est l’information «sujet» du formulaire.
  $message = «De : «.$_POST[‘nom’].» <».$_POST[‘email’].»>\n».$_    
  POST[‘message’]; 
  // création d’une variable. Alimentation de cette variable grâce aux informations envoyée par le formulaire. Ici les informations enregistrées dans la variable sont le nom de l’expéditeur, son E-mail et son message.
 $resul = mail(«toto@toto.com», «$sujet», «$message»); 
  // Création d’une variable qui inclut l’email qui sera envoyé au récepteur avec le sujet et le message.
  if($resul){ 
  // Condition « Si » qui exécute la variable « $resul ». L’E-mail est alors envoyé.
  include(‘confirmation.php);
  // Si l’E-mail a bien été envoyé alors l’expéditeur sera redirigé vers une autre page de confirmation.
  }
  else{
  include(‘erreur.php); 
  //Sinon l’expéditeur sera redirigé vers une page d’erreur.
  }
?>
Merci encore et bonne fête de fin d'année.

Amicalement

Arnaud
arnaudperfect est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/12/2006, 13h49   #2
Membre actif
 
Homme Arnaud
Inscription : décembre 2006
Messages : 871
Détails du profil
Informations personnelles :
Nom : Homme Arnaud
Âge : 27
Localisation : France, Seine Maritime (Haute Normandie)

Informations forums :
Inscription : décembre 2006
Messages : 871
Points : 195
Points : 195
Personne pour m'aider ?

J'ai déjà effectuer quelque recherche sur le web et j'ai trouvé comment on peut récupérer le contenu des champs "<% =Request.Form("mon_champ") %>" mais je ne sais pas comment le mettre en oeuvre pour tout mon formulaire.

Merci d'avance de vos lumières

Arnaud
arnaudperfect est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/12/2006, 14h23   #3
Membre chevronné
 
Avatar de ryan
 
Inscription : juin 2003
Messages : 766
Détails du profil
Informations forums :
Inscription : juin 2003
Messages : 766
Points : 760
Points : 760
Yop!

- tu peux en effet récupérer les champs du formulaire à l'aide de la collection request.form
- pour envoyer un mail en ASP, on utilise le plus souvent un composant. CDONTS est soit installé par défaut sur certaines versions des serveurs IIS, soit disponible gratuitement chez Bill (à ce qu'il semble). Mais d'autres composants sont parfois disponibles, cela dépend de l'hébergeur. Une petite recherche Google sur CDONTS devrait te fournir des exemple de code.
ryan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/01/2007, 20h19   #4
Membre actif
 
Homme Arnaud
Inscription : décembre 2006
Messages : 871
Détails du profil
Informations personnelles :
Nom : Homme Arnaud
Âge : 27
Localisation : France, Seine Maritime (Haute Normandie)

Informations forums :
Inscription : décembre 2006
Messages : 871
Points : 195
Points : 195
Ok merci de l'info.

J'ai fais ca mais je ne suis pas sur que ca soit correct.


Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<%
 
var sujet = Request.Form("sujet");
var message = "De : " Request.Form("nom") Request.Form("message");
var from =Request.Form("email");
 
Set objSendmail = CreateObject("CDONTS.NewMail")
With objSendmail
  .From = from
  .to = "toto@toto.com"
  .Subject = sujet
  .Body = message
  .Importance = CDOHigh
  .Send
End With
objSendMail = NOTHING
%>
Pourriez vous me corriger ?

Merci d'avance

Arnaud
arnaudperfect est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/01/2007, 21h10   #5
Membre chevronné
 
Avatar de ryan
 
Inscription : juin 2003
Messages : 766
Détails du profil
Informations forums :
Inscription : juin 2003
Messages : 766
Points : 760
Points : 760
Yop!

Pour le code relatif à CDONTS, je te fais confiance car je ne l'utilise pas.

Par contre, quelques petit problèmes dans les premières ligne de code où tu mélanges Javascript et VBscript, et il manque le signe de concaténation dans la construction de la variable message.

Code :
1
2
3
4
 
var sujet = Request.Form("sujet");
var message = "De : " Request.Form("nom") Request.Form("message");
var from =Request.Form("email");
Devrait être:

Code :
1
2
3
4
 
sujet = Request.Form("sujet")
message = "De : " & Request.Form("nom") & Request.Form("message")
from = Request.Form("email")
ryan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/01/2007, 22h56   #6
Membre actif
 
Homme Arnaud
Inscription : décembre 2006
Messages : 871
Détails du profil
Informations personnelles :
Nom : Homme Arnaud
Âge : 27
Localisation : France, Seine Maritime (Haute Normandie)

Informations forums :
Inscription : décembre 2006
Messages : 871
Points : 195
Points : 195
Ok merci beaucoup !

J'ai vu qu'on pouvait écris le script d'envoi du mail différement :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<% 
 
Dim sujet = Request.Form("sujet")
Dim message = "De : " & Request.Form("nom") & Request.Form("message")
Dim from = Request.Form("email")
Dim Mailer
 
Set Mailer = Server.CreateObject("CDONTS.NewMail") 
' on crée l'objet CDONTS
 
Mailer.To = "destinataire@email.com" 
' email du destinataire
 
Mailer.From = nom 
' nom de l'expediteur
 
Mailer.Subject = sujet
' sujet du message
 
Mailer.Body = message
' corps du message
 
Mailer.Send
' on envoie le tout
 
%>
A votre avis, ces lignes sont bien écrites concernant l'utilisation des variables ?

Code :
1
2
3
4
5
6
7
8
9
10
11
12
 
Mailer.To = "destinataire@email.com" 
' email du destinataire
 
Mailer.From = nom 
' nom de l'expediteur
 
Mailer.Subject = sujet
' sujet du message
 
Mailer.Body = message
' corps du message
Merci pour vos réponses

et bonne année 2007
arnaudperfect est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/01/2007, 00h21   #7
Membre chevronné
 
Avatar de ryan
 
Inscription : juin 2003
Messages : 766
Détails du profil
Informations forums :
Inscription : juin 2003
Messages : 766
Points : 760
Points : 760
Re!

Oui, à première vue (une peu fatiguée vu l'heure) cela devrait fonctionner.
Bonne année à toi aussi.
ryan est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 07h27.


 
 
 
 
Partenaires

Hébergement Web