Récuperer une variable d'un formulaire

Eléphanteau du PHP | 43 Messages

14 mai 2008, 11:13

Bonjour j'ai un petit souci que j'arrive pas a a régler alors voila j'ai un formulaire sur la page 1 donc qui commence par :
<?php
session_start();
if(isset($_POST['validation']))
{
$adress = "mon email";
$sujet = "Commande ";
$message .= "Une commande a ete effectue  depuis le site <a href='http://www.google.fr/'>http://www.google.fr</a> :<br><br>";
$message .= "<b><font color='#FF0000'>Compte revendeur sélectionné:</font></b> Linux Platform Hosting<br><b>Nom:</b> {$_POST['nom']}<br><b>Prénom:</b> {$_POST['prenom']}<br><b>Organisation:</b> {$_POST['organisation']}<br><b>Forme juridique:</b> {$_POST['forme_juridique']}<br><br>";
$message .= "<b>Adresse:</b> {$_POST['adresse']}<br><b>Code postal:</b> {$_POST['code_postal']}<br><b>Ville:</b> {$_POST['ville']}<br><b>Pays:</b> {$_POST['pays']}<br><b>Adresse e-mail:</b> {$_POST['email']}<br><b>Téléphone:</b> {$_POST['tel']}<br><br>";
$message .= "<b>Nom du compte:</b> {$_POST['compte']}<br><b>Mot de passe:</b> {$_POST['pass']}<br><b>Confirmation du Mot de passe:</b> {$_POST['pass2']}<br><br>";
$message .= "<b>Adresse du compte revendeur:</b> {$_POST['adresse_sous_domaine']}<br><b>Nom de domaine:</b> {$_POST['domaine']}<br><b>Durée de souscription:</b> {$_POST['duree']}<br><b>Montant à payer:</b> <font color='#FF0000'>{$_POST['tarif']}</font><br><b>Moyen de paiement:</b> {$_POST['reglement']}<br><b>Commentaires éventuel:</b> {$_POST['commentaire']}<br><br>";
$entete .= "From: {$_POST['email']}\n";
$entete .= "Content-Type: text/html; charset=\"iso-8859-1\"";
mail($adress, $sujet, $message, $entete);
header("Location:linux3.php");
}	
?>

Code : Tout sélectionner

<form action="linux2.php" method="post" name="hebergement" onSubmit="return verif_champs()" > .......... (les suspensions et la continuité du formulaire je vous met le début et fin) <tr> <td class="td29">Durée de souscription :</td> <td class="td30"> <select name="duree" onchange="duree_linux(this.form)" style="width: 187px;"> <option value="1" selected="selected">1 mois</option><option value="3">3 mois</option><option value="6">6 mois</option><option value="12">12 mois (1 mois offert)</option></select></td> </tr> <tr> <td class="td31">Montant à payer TTC (TVA 19,6%) :</td> <td class="td32"><input name="tarif" size="26" readonly="readonly" style="color: rgb(192, 0, 0);" value="10.00€;" type="text"></td>"; </tr> <input name="validation" value="Continuer la commande" type="submit"></form>
Quand la personne choisi la duree (1mois) (3mois) (6mois) ou (12 mois) le montant change par rapport au mois choisi normale vu que j'ai fait un fichier javascript a part le voici au cas vous me le demanderais

Code : Tout sélectionner

function duree_linux(formulaire) { if (formulaire.duree.options[formulaire.duree.selectedIndex].value == 1) { formulaire.tarif.value = '10.00€'; } if (formulaire.duree.options[formulaire.duree.selectedIndex].value == 3) { formulaire.tarif.value = '30.00€'; } if (formulaire.duree.options[formulaire.duree.selectedIndex].value == 6) { formulaire.tarif.value = '60.00€'; } if (formulaire.duree.options[formulaire.duree.selectedIndex].value == 12) { formulaire.tarif.value = '120.00€'; } }
Jusqu'à la pas de problème je reçoit tout le formulaire par mail aucun souci :) donc il clique sur le bouton "continuer la commande" du formulaire pour passer au paiement.

Nous arrivons a la page 2 donc j'ai mon code paypal qui et sur cet page le voici

Code : Tout sélectionner

<fieldset> <legend>Paiement par carte bleue (PAYPAL)</legend> <form name="_xclick" target="paypal" action="https://www.paypal.com" method="post"> <input type="hidden" name="cmd" value="_xclick" /> <input type="hidden" name="business" value="<?php echo(PAIEMENT_PAYPAL); ?>" /> <input type="hidden" name="currency_code" value="EUR" /> <input type="hidden" name="item_name" value="Linux Platform Hosting" /> <input type="hidden" name="amount" value="<?php echo(number_format($tarif,2,"."," ")); ?>" /> <input type="hidden" name="custom" value="<?php echo($email); ?>" /> <input type="hidden" name="notify_url" value="<?php echo(ESFD_URL); ?>private/factures/payer.php?msg=<?php echo(urlencode("Le paiement a été effectué")); ?>" /> <input type="hidden" name="return" value="<?php echo(ESFD_URL); ?>private/factures/payer.php?msg=<?php echo(urlencode("Le paiement a été effectué")); ?>" /> <input type="hidden" name="cancel_return"value="<?php echo(ESFD_URL); ?>private/factures/payer.php?msg=<?php echo(urlencode("Le paiement n'a pas été effectué")); ?>" /> <div align="center"><input type="image" src="./client/private/factures/paypal.gif" name="submit" alt="Paypal.fr" /></div><br> <input type="hidden" name="add" value="1" /> </form> </fieldset>
Et en faite je voudrait récupérer la valeur que la personne a choisi dans le formulaire donc "TARIF" pour l'afficher sur paypal qui et ce bout de code :
<input type="hidden" name="amount" value="<?php echo(number_format($tarif,2,"."," "));  ?>" />
Je pensait en mettant $tarif dans le formulaire paypal que sa allait fonctionnait mais sa aurai été trop beau :P donc voila si quelqu'un peut m'aider pour récupérer le champ tarif pour le reafficher sur la page 2 merci a vous espérant que je me suis bien expliquer :wink:
Modifié en dernier par scorpion le 14 mai 2008, 19:35, modifié 1 fois.

ViPHP
ViPHP | 2291 Messages

14 mai 2008, 16:04

Je pensait en mettant $tarif dans le formulaire paypal que sa allait fonctionnait mais sa aurai été trop beau :P donc voila si quelqu'un peut m'aider pour récupérer le champ tarif pour le reafficher sur la page 2 merci a vous espérant que je me suis bien expliquer :wink:
Et comme ceci :?:
<input type="hidden" name="amount" value="<?php echo(number_format($_POST['tarif'],2,"."," ")); ?>" /> 

Eléphanteau du PHP | 43 Messages

14 mai 2008, 19:28

Merci pour ton aide ;)

J'avait déjà essayer ce que tu a dit de mettre et c'est toujours pareil :( si tu a une autre idée sa serai cool :o

ViPHP
ViPHP | 2291 Messages

14 mai 2008, 19:35

Merci pour ton aide ;)

J'avait déjà essayer ce que tu a dit de mettre et c'est toujours pareil :( si tu a une autre idée sa serai cool :o
affiche se que tu reçois comme ceci
echo '<pre>';
print_r($_POST);
echo '</pre>';

Eléphanteau du PHP | 43 Messages

14 mai 2008, 19:37

Je met ce bout de code dans la page 2 ?

ViPHP
ViPHP | 2291 Messages

14 mai 2008, 19:38

Je met ce bout de code dans la page 2 ?
Oui au début il te permettra de voir se que ta page reçois et montre le nous

Eléphanteau du PHP | 43 Messages

14 mai 2008, 19:40

sa m'affiche un code sur la page ceci :arrow: :
Array
(
)

ViPHP
ViPHP | 2291 Messages

14 mai 2008, 19:46

sa m'affiche un code sur la page ceci :arrow: :
Array
(
)
Tu a mis le code dans la page linux2.php ?

Eléphanteau du PHP | 43 Messages

14 mai 2008, 19:47

oui tout en haut voici la page 2 :
<?php
session_start();
echo '<pre>';
print_r($_POST);
echo '</pre>';

<?php if (PAIEMENT_PAYPAL != "") {?>

<fieldset>
<legend>Paiement par carte bleue (PAYPAL)</legend>

<form name="_xclick" target="paypal" action="https://www.paypal.com" method="post">
<input type="hidden" name="cmd" value="_xclick" />
<input type="hidden" name="business" value="<?php echo(PAIEMENT_PAYPAL); ?>" />
<input type="hidden" name="currency_code" value="EUR" />
<input type="hidden" name="item_name" value="Linux Platform Hosting" />
<input type="hidden" name="amount" value="<?php echo(number_format($_POST['tarif'],2,"."," ")); ?>" />
<input type="hidden" name="custom" value="<?php echo($email); ?>" />
<input type="hidden" name="notify_url" value="<?php echo(ESFD_URL); ?>private/factures/payer.php?msg=<?php echo(urlencode("Le paiement a été effectué")); ?>" />
<input type="hidden" name="return" value="<?php echo(ESFD_URL); ?>private/factures/payer.php?msg=<?php echo(urlencode("Le paiement a été effectué")); ?>" />
<input type="hidden" name="cancel_return"value="<?php echo(ESFD_URL); ?>private/factures/payer.php?msg=<?php echo(urlencode("Le paiement n'a pas été effectué")); ?>" />
<div align="center"><input type="image" src="./client/private/factures/paypal.gif" name="submit" alt="Paypal.fr" /></div><br>
<input type="hidden" name="add" value="1" />
</form>
</fieldset>

<?php } ?>

<?php
closetable();
include("footer.php");
session_destroy();
?>
Edit: Ha non effectivement je l'avait mit dans linux3.php je vient de la mettre dans linux2.php et c'est bon il ne m'affiche plus rien mais je n'arrive toujours pas a récupérer se que je veut :(
Modifié en dernier par scorpion le 14 mai 2008, 19:52, modifié 1 fois.

ViPHP
ViPHP | 2291 Messages

14 mai 2008, 19:52

Je comprend pas quand je test ton code moi j'ai ceci
Array
(
    [duree] => 1
    [tarif] => 10.00€;
    [validation] => Continuer la commande
)

Je ne voie pas pourquoi chez toi cela ne fonctionne pas

ViPHP
ViPHP | 2291 Messages

14 mai 2008, 19:54

Attention il y a une erreur dans ton script
ici
<?php if (PAIEMENT_PAYPAL != "") {?> 
devrais être
if (PAIEMENT_PAYPAL != "") { 
?>

Eléphanteau du PHP | 43 Messages

14 mai 2008, 20:01

Je vient de rectifier et pareil je t'est envoyer un mp :oops:

édit: un grand merci a Dunbar c'était un problème de session