Page 1 sur 1

champ caché DATAS

Posté : 27 juil. 2009, 21:26
par Nicost
Salut tous,
Dans mon formulaire j'essai de faire suivre le login + le mot de passe a travers le script allopass, malheureusement je ne peux faire suivre que le login puisqu'il n'existe qu'un seul champ data.
Est-il possible d'ajouter plusieurs champs cachés comme DATAS ? Par exemple DATAS + DATAS2...
Merci par avance.

Mon formulaire :
<form name="APform" action="http://payment.allopass.com/acte/access.apu" method="post" style="text-align:center;clear:both">
<input type="hidden" name="ids" value="127428" />
<input type="hidden" name="idd" value="169250" />
<input type="hidden" name="lang" value="fr" />
<input type="hidden" name="datas" value="">
Login :<br />
<input type="text" name="login" value="<?php echo trim(htmlentities($login)) ?>"><br />
Code : <br />
<input type="text" size=8 maxlength=10 value="" name="code" style="BACKGROUND-COLOR: #E7E7E7; BORDER-BOTTOM: #000080 1px solid; BORDER-LEFT: #000080 1px solid; BORDER-RIGHT: #000080 1px solid; BORDER-TOP: #000080 1px solid; COLOR: #000080; CURSOR: text; FONT-FAMILY: Arial; FONT-SIZE: 10pt; FONT-WEIGHT:bold; LETTER-SPACING: normal; WIDTH:70; TEXT-ALIGN=center;">
<BR>
Passe :<br />
<input type="text" name="passe" value="<?php echo trim(htmlentities($passe)) ?>"><br>
<input type="button" name="APsub" value="" onclick="this.form.submit();this.form.APsub.disabled=true;" style="border:0px;margin:0px;padding:0px;width:48px;height:18px;background:url('http://payment.allopass.com/imgweb/common/bt_ok.gif');" /><br />
<br /><br />
</form>
SI je mes datas dans name :

Login :<br />
<input type="text" name="datas" value="<?php echo trim(htmlentities($login)) ?>"><br />

J'arrive a récuperer le login entrer, par contre pour le passe je ne peux pas mettre un autre datas.

Merci d'avance.

Posté : 27 juil. 2009, 21:31
par dunbar

Posté : 27 juil. 2009, 21:38
par Nicost
Bonsoir Dunbar et merci de ta réponse.
Le problème est que j'ai déjà mis un hidden avec le datas, or je ne peux mettre qu'un seul datas.

Si je mes le datas dans le name du passe :
<input type="text" name="datas" value="<?php echo trim(htmlentities($passe)) ?>">

Alors je vais récuperer le login et le passe comme ceci : thomas5841kul12
Au lieu de : &datas=thomas&datas=5841kul12

Posté : 27 juil. 2009, 21:44
par thehawk
Je pense qu'il serai bon de faire un truc comme :

base64_encode($login.';;//;;'.$pass); dans ton champ caché et de le recupé comme ceci :

$decode = base64_decode($_GET ....);
list($login , $pass) = explode(';;//;;' , $decode);

Enfin c'est mon premier ressenti ^^

Bye Hawk

Posté : 27 juil. 2009, 21:48
par dunbar
Et placer les valeurs en SESSION :?:

Posté : 27 juil. 2009, 22:18
par Nicost
Merci de ta réponse aussi Thehawk.

ALors base64_encode je ne connais pas du tout, alors voila comment j'ai fait :
<form name="APform" action="http://payment.allopass.com/acte/access.apu" method="post" style="text-align:center;clear:both"> 
<input type="hidden" name="ids" value="127428" /> 
<input type="hidden" name="idd" value="169250" /> 
<input type="hidden" name="lang" value="fr" /> 
<input type="hidden" name="datas" value="<?php base64_encode($login.';;//;;'.$passe); ?>"> 
Login :<br /> 
<input type="text" name="login" value="<?php echo trim(htmlentities($login)) ?>"><br /> 
Dans le name pour le login, j'ai remis login au lieu de datas, dans le hidden du datas j'ai donc rajouter : <?php base64_encode($login.';;//;;'.$passe); ?>
Chez pas si j'ai faut...

Et pour la récuperation, je les mis comme ceci :
$decode = base64_decode($_GET['DATAS']); 
list($login , $passe) = explode(';;//;;' , $decode); 
Merci encore pour votre aide.

Posté : 27 juil. 2009, 22:41
par thehawk
Re-bonjour.

Et donc qu'elle est le souci ??

Fait un echo 'Login :'. $login.' <br/> Pass:'.$pass;
Tu verra normalement les bonnes infos

Apres j'ai mit un base64 pour masquer , tu peux très bien utiliser du cryptage ou juste un url_encode et url_decode , ce la dépend de ta sécurité voulu car un champ caché est visible dans le code source donc on peut injecter du code ou de fausse information

Bye Hawk

Posté : 27 juil. 2009, 22:59
par Nicost
Re bonsoir Thehawk,
Oups j'ai odmis de dire quand faite aucune des information login et passe son présent.
Voila pourquoi j'ai remis le code plus haut pour voir si j'avais faut ou pas.
J'avais fait un echo justement pour voir, mais j'ai rien.
Merci encore pour l'aide.

Posté : 27 juil. 2009, 23:16
par thehawk
Alors regarde si dans la page d'envoi du formulaire les variables sont bien okay , ensuite fait un print_r($_GET) pour savoir ce qui rentre dans ta page et au cas où print_r($_POST)

je pense la tout de suite a un souci de casse (majuscules) entre le formulaire et le retour.

Bye Hawk

Posté : 27 juil. 2009, 23:41
par Nicost
Alors apres vérification mes variables son ok, sinon toujours pareil rien.

Merci pour l'aide.

Posté : 27 juil. 2009, 23:50
par thehawk
que te donne les printr ?

Posté : 28 juil. 2009, 00:10
par Nicost
A excuse moi.
Voila :
Array ( [RECALL] => TEST )