IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Assignation variable dans formulaire


Sujet :

Langage PHP

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Février 2005
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2005
    Messages : 15
    Points : 8
    Points
    8
    Par défaut Assignation variable dans formulaire
    Bonjour à tous,

    j'ai un problème avec mon formulaire et j'aurais besoin de votre aide
    Chez mon hebergeur, j'utilise un de leur script pour envoyer des données saisies dans mon form vers une adresse email. Pour ce faire, je dois inserer des variables hidden dans mon form avec l'adresse mail et la page de redirection apres envoie du form.
    Dans mon form, j'ai aussi deux boutons radio. J'aimerais qu'en fonction du choix du bouton radio l'utilisateur soit redirigé vers une page specifique.
    Voici comment je m'y suis pris:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    //declaration des variables pour le formulaire d'email
    <input type=hidden name="recipient" value="adresse@adresse.com">
    <input type=hidden name="redirect" value="<? echo $adr;?>">
    //mes boutons radio
     <td>
        <input type="radio" name="payment_meth" value="virement">Virement 
     
     </td>
     <td>
        <input type="radio" name="payment_meth" value="paypal">Paypal 
    </td>
    Ensuite j'ai crée une condition en php pour definir l'adresse de redirection dans une variable appelée $adr
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    <?
    if ($payment_meth==paypal)
    $adr="http://www.monsite.com/merci.php";
    else
    $adr="http://www.monsite.com/odr/part.php";
    ?>
    Mais voilà mon problème c'est que je suis chaque fois redirigé dans l'adresse "$adr="http://www.monsite.com/odr/part.php";" c'est celle contenue dans mon "else". Meme quand je selectionne le bouton qui doit definir ma variable $payment_meth==paypal, j'ai l'impression que ma condition if ne fonctionne pas. Pourtant quand je recois le mail avec les data du formulaire ma variable $payment_meth à le bon état. Alors que quand je lui demande son état dans le script on dirait qu'elle est vide!

    Merci pour votre aide.

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    453
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 453
    Points : 550
    Points
    550
    Par défaut
    Il manque des guillemets, et le $_POST :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $_POST['payment_meth']=="paypal"

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Février 2005
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2005
    Messages : 15
    Points : 8
    Points
    8
    Par défaut
    MErci mais ca ne fonctionne toujours pas...
    C'etait bien pour le if que je devais mettre ça?

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    453
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 453
    Points : 550
    Points
    550
    Par défaut
    Pourrais-je avoir le code complet des 2 pages ?

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Février 2005
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2005
    Messages : 15
    Points : 8
    Points
    8
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
     
    <form name="form_cmd" method="post" action="http://www.hebergeur.net/webtools/formmail.php">
    <p align="justify"><label></label>
     
    <p class="DoubleBreakBefore">
     
        <table width="270" border="0">
          <tr>
            <td bgcolor="#b1c0cc" class="Texte"><div align="center"><strong>M&eacute;thode de paiement</strong></div></td>
          </tr>
        </table>
                <table width="290" border="0">
                  <tr>
                    <td width="140">
                    	<div align="center">
                        <p>
                        <input type="radio" name="payment_meth" value="virement">
                        Virement                    </p>
                        </div>                </td>
                    <td width="140">
                        <div align="center">
                        <p>
                        <input type="radio" name="payment_meth" value="paypal">
                     	Paypal                    </p>
                        </div>                </td>
                  </tr>
                  <tr>
                    <td><div align="center"><img src="../imagesBlank/virement.jpg" alt="virement" width="85" height="56"></div></td>
                    <td><label>
                      <input type="image" name="paypal" id="paypal" src="https://www.paypalobjects.com/fr_FR/i/bnr/vertical_solution_PP.gif">
                    </label></td>
                  </tr>
                </table>
     
                <?
    			if($payment_meth==paypal)
    			$adr="http://www.monsite.com/odr/part_payp.php";
     
    			else
    			$adr="http://www.monsite.com/merci.php";
     
    			?>
                <input type=hidden name="recipient" value="adresse@adresse.com">
                <input type=hidden name="subject" value="Commande Particulier">
    			<input type=hidden name="redirect" value="<? echo $adr;?>">
                <input type=hidden name="missing_fields_redirect" value="http://www.monsite.com/erreur.html">
                <input type="submit" name="button" id="button" value="Valider">
     
          </form>

  6. #6
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Points : 15 059
    Points
    15 059
    Par défaut
    Bonjour,
    Attention, le name d'un élément d'un formulaire n'est pas une variable php. Tu ne peux pas recevoir sa valeur que s'il est envoyé.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <?php
    			if(isset ($_POST['$payment_meth']) && ($_POST['$payment_meth'] =="paypal"))
    {
    			$adr="http://www.monsite.com/odr/part_payp.php";
    }
    			else
    {
    			$adr="http://www.monsite.com/merci.php";
    }			
    			?>

  7. #7
    Futur Membre du Club
    Profil pro
    Inscrit en
    Février 2005
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2005
    Messages : 15
    Points : 8
    Points
    8
    Par défaut
    je me doutais que le problème venait du fait que cette variable n'était initialisé qu'à l'envoye du form or dans le form même j'en fais appel pour définir la variable $adr.

    j'ai essayé votre code mais ca ne fonctionne toujours pas
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
     
    <form name="form_cmd" method="post" action="http://www.hebergeur.net/webtools/formmail.php">
    <p align="justify"><label></label>
     
    <p class="DoubleBreakBefore">
     
        <table width="270" border="0">
          <tr>
            <td bgcolor="#b1c0cc" class="Texte"><div align="center"><strong>M&eacute;thode de paiement</strong></div></td>
          </tr>
        </table>
                <table width="290" border="0">
                  <tr>
                    <td width="140">
                    	<div align="center">
                        <p>
                        <input type="radio" name="payment_meth" value="virement">
                        Virement                    </p>
                        </div>                </td>
                    <td width="140">
                        <div align="center">
                        <p>
                        <input type="radio" name="payment_meth" value="paypal">
                     	Paypal                    </p>
                        </div>                </td>
                  </tr>
                  <tr>
                    <td><div align="center"><img src="../imagesBlank/virement.jpg" alt="virement" width="85" height="56"></div></td>
                    <td><label>
                      <input type="image" name="paypal" id="paypal" src="https://www.paypalobjects.com/fr_FR/i/bnr/vertical_solution_PP.gif">
                    </label></td>
                  </tr>
                </table>
     
                <?
    			if(isset ($_POST['payment_meth']) && ($_POST['payment_meth']) =="paypal")
    			$adr="http://www.monsite.com/odr/part_payp.php";
     
    			else
    			$adr="http://www.monsite.com/merci.php";
     
    			?>
                <input type=hidden name="recipient" value="adresse@adresse.com">
                <input type=hidden name="subject" value="Commande Particulier">
    	 <input type=hidden name="redirect" value="<? echo $adr;?>">
                <input type=hidden name="missing_fields_redirect" value="http://www.monsite.com/erreur.html">
                <input type="submit" name="button" id="button" value="Valider">
     
          </form>
    Y a-t-il moyen, lorsque l'on selectionne un des bouton radio, une variable soit définie et ce avant l'envoie du formulaire. De cette manière je pourrais, avant l'envoie du form, définir ma variable $adr.
    J'avais penser à l'attribut "onClick" de la balise input mais je ne connais pas bien son fonctionnement.
    Comment puis-je faire?

    Merci pour votre aide

  8. #8
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Points : 15 059
    Points
    15 059
    Par défaut
    Y a-t-il moyen, lorsque l'on selectionne un des bouton radio, une variable soit définie et ce avant l'envoie du formulaire. De cette manière je pourrais, avant l'envoie du form, définir ma variable $adr.
    Que veux-tu faire exactement avec la variable $adr?
    J'avais penser à l'attribut "onClick" de la balise input mais je ne connais pas bien son fonctionnement.
    Les ressources Javascript.

  9. #9
    Futur Membre du Club
    Profil pro
    Inscrit en
    Février 2005
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2005
    Messages : 15
    Points : 8
    Points
    8
    Par défaut
    Avec l'utilisation du fichier formmail.php (action de mon form) cette variable permet de venir editer l'input "redirect" qui rediriger le site vers une certaine page après l'envoie du formulaire.
    notez que je ne peux pas editer le fichier formmail.php car c'est un service de mon hebergeur.

  10. #10
    Modérateur
    Avatar de blueice
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2003
    Messages
    3 487
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2003
    Messages : 3 487
    Points : 5 134
    Points
    5 134
    Par défaut
    Utilise les { } avec le if et else...

  11. #11
    Futur Membre du Club
    Profil pro
    Inscrit en
    Février 2005
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2005
    Messages : 15
    Points : 8
    Points
    8
    Par défaut
    C'est gentil mais hélas ca ne résout pas mon problème.
    Une autre idée?

  12. #12
    Modérateur
    Avatar de blueice
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2003
    Messages
    3 487
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2003
    Messages : 3 487
    Points : 5 134
    Points
    5 134
    Par défaut
    Commence par <?php et non <?

  13. #13
    Futur Membre du Club
    Profil pro
    Inscrit en
    Février 2005
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2005
    Messages : 15
    Points : 8
    Points
    8
    Par défaut
    j'ai aussi essayé plusieurs fois mais ca n'y change rien

  14. #14
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    453
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 453
    Points : 550
    Points
    550
    Par défaut
    Essayez plutôt avec un select.

Discussions similaires

  1. Initialisation variable dans formulaire
    Par yagrasdemonde dans le forum Langage
    Réponses: 4
    Dernier message: 05/12/2008, 20h41
  2. Réponses: 1
    Dernier message: 02/06/2008, 00h29
  3. problème variable dans formulaire
    Par calitom dans le forum Langage
    Réponses: 2
    Dernier message: 20/07/2006, 15h12
  4. problème de variable dans formulaire
    Par chienlou dans le forum Langage
    Réponses: 4
    Dernier message: 20/03/2006, 06h53
  5. Variable qui évolue en fonction des choix dans formulaire
    Par stefou007 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 06/09/2005, 22h40

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo