2010-09-24 18 views
1

Vous cherchez un peu de direction pour construire un formulaire PHP qui sera divisé en 2 parties et se termine avec un utilisateur achetant un produit en utilisant PayPal. La première étape pose une série de questions telles que le nom, l'adresse, le courrier électronique, etc. Il posera également une question simple avec une série de boutons radio, s'ils n'en choisissent aucun, l'utilisateur sera informé que quelqu'un sera dans touchez et terminez là, s'ils choisissent l'une des autres options, ils seront alors amenés à l'étape deux. Quelles que soient les options choisies à ce stade, toutes les informations de la phase 1 seront envoyées par e-mail.Formulaire PHP avec PayPal

La deuxième étape obtient essentiellement les informations sur les utilisateurs PayPal.

grâce

MISE À JOUR:

J'ai simplifié ce considérablement, alors maintenant il y a juste une forme qui va récupérer les données et l'envoyer à un e-mail, puis en fonction là-bas choix de bouton radio affichez le message ou envoyez-le à PayPal.

J'ai besoin d'aide pour vérifier l'option radio et afficher le message/rediriger vers PayPal, et envoyer l'information à une adresse électronique. Et aussi envoyer l'information à PayPal.

Le code est le suivant:

<?php if(isset($_POST['submit'])) 

    { 

     $to = "[email protected]"; 
     $subject = "SolidCAM Xpress"; 

     $name_field = $_POST['name']; 
     $email_field = $_POST['email']; 
     $phone_field = $_POST['message']; 
     $company_field = $_POST['company']; 
     $reseller_field = $_POST['reseller']; 

     $body = "From: $name_field\n E-Mail: $email_field\n Phone:\n $phone_field\n Company:\n $company_field\n Reseller:\n $reseller_field"; 

     mail($to, $subject, $body); 

    } 

    else { 

    ?> 

    <form method="POST" action=""> 

     <fieldset> 
      <legend>Purchase SolidCAM Xpress</legend> 

      <ul> 
       <li><label for="name">Name <input type="text" name="name" /></label></li> 
       <li><label for="email">Email <input type="text" name="email" /></label></li> 
       <li><label for="phone">Phone <input type="text" name="phone" /></label></li> 
       <li><label for="company">Company <input type="text" name="company" /></label></li> 
      </ul> 

      <p>Do you currently have SolidWorks, if yes who is your reseller?</p> 
      <ul> 
       <li><label for=""><input type="radio" name="reseller" value="None" /> Don't have SolidWorks</label></li> 
       <li><label for=""><input type="radio" name="reseller" value="Cad Connect" /> Cad Connect</label></li> 
       <li><label for=""><input type="radio" name="reseller" value="Cadtek" /> Cadtek</label></li> 
       <li><label for=""><input type="radio" name="reseller" value="CCSL" /> CCSL</label></li> 
       <li><label for=""><input type="radio" name="reseller" value="Innova" /> Innova</label></li> 
       <li><label for=""><input type="radio" name="reseller" value="NT CAD/CAM" /> NT CAD/CAM</label></li> 
       <li><label for=""><input type="radio" name="reseller" value="Solid Engineer" /> Solid Engineer</label></li> 
       <li><label for=""><input type="radio" name="reseller" value="Solid Solutions Ireland" /> Solid Solutions Ireland</label></li> 
       <li><label for=""><input type="radio" name="reseller" value="Solid Solutions Management" /> Solid Solutions Management</label></li> 
       <li><label for=""><input type="radio" name="reseller" value="TMS Scotland" /> TMS Scotland</label></li> 
      </ul> 

      <p><input type="submit" name="continue" value="Continue" /></p> 

     </fieldset> 

    </form> 

    <?php 

    } 

    // When user clicks continue send all data to [email protected] 

    // Then check if user has selected None from the last question then show the following and prevent them from proceeding 

    if() { 

    ?> 

    <p>SolidCAM Xpress requires a valid copy of SolidWorks, we will be in touch shortly to discuss pricing!</p> 

    <?php 

    } else { 

     // User has selected something other than None, send them off to PayPal 

    } 

    ?> 

Répondre

0

Pour stocker les informations, j'utiliser/regarder dans sessions. Cela vous permet de stocker les données pour chaque étape. Votre autre méthode consiste à ajouter les éléments à la page cachés éléments de formulaire. Ma préférence serait la route de la session, cependant.

Comment envisagez-vous d'envoyer les données à Paypal? Par une demande cURL, ou en les faisant appuyer sur un bouton à l'étape 3?

S'il s'agit d'une requête curl, la route de la session est définitivement le chemin à parcourir. Si vous envisagez d'avoir simplement le formulaire à l'étape 3 les prendre à paypal, le caché route d'entrée pourrait être un meilleur choix.

+0

Je ne sais pas la encore PayPal, si vous Avoir des suggestions pour les meilleures pratiques alors s'il vous plaît partager. Je pense que l'itinéraire de la session pourrait être mieux comme indiqué ci-dessus le formulaire sortira à l'étape 2 si l'utilisateur sélectionne aucun comme l'une des options, mais doit encore faire l'envoi de courrier. Est-ce que ce serait facile de faire tout cela sur la même page? Donc, comme index.php? stage = 2 et aussi empêcher une personne d'accéder aux autres étapes sans compléter les précédentes. – Cameron