[AIDE] Retour arrière ? "Allopass " bug explication

cs_koko2012 Messages postés 10 Date d'inscription vendredi 13 mai 2011 Statut Membre Dernière intervention 16 février 2013 - 31 janv. 2012 à 18:59
cs_Julien39 Messages postés 6414 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 29 juillet 2020 - 1 févr. 2012 à 09:33
Bonjour :-)

Alors voilà j'ai un problème avec mon code allopass,
Il fonctionne niquel mais j'ai un soucis, c'est un système de point (db ..) une fois que l'utilisateur fais son sms et donne le code, la validation ce fait et donne 1500 points.
Seulement si ils font précédent, précédent ... puis suivant suivant ... bah ils ont de nouveau 1500 points.

J'aimerais savoir comment contrer cela.
Avoir un script anti retour ? (précédent)

Mettre une session destroy marcherais ? session_destroy()


mon script allopass :

<?php
session_start();

if(isset($_GET['valid']) and $_GET['valid']=='ok' and @!empty($_GET['RECALL']))
{

//Vérification du code par allopass
$RECALL = urlencode($_GET['RECALL']);
$AUTH = urlencode($CONFIG_is['auth']);

$r = @file( "http://payment.allopass.com/api/checkcode.apu?code=$RECALL&auth=$AUTH" );

//Connection DB	
mysql_connect('91.121.**.**', 'root', '********************');
$idcompte = $_SESSION['id_syg'];

//Query
$sql="UPDATE account.account SET cash = cash+1500 WHERE id = $idcompte";
mysql_query($sql) or die (mysql_error());

//Redirection
header("Location: index.php?p=11&v=ok");

}
/**
 *Si on recoit un payement erroné
 **/
elseif(isset($_GET['valid']) and $_GET['valid']=='nok')
{
header("Location: index.php?p=11&v=nok");

}
/**
 *Si on ne recoit pas de  payement
 **/
else
{
header("Location: index.php?p=11&v=nok");
}

?>


Merci de votre aide !

1 réponse

cs_Julien39 Messages postés 6414 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 29 juillet 2020 369
1 févr. 2012 à 09:33
Bonjour,

Le problème vient des chois de conception que tu as fait. Un script "anti retour", ca n'existe pas.

Avant d'ajouter les points, il faut que tu vérifies si l'allopass est valide et ne transmet pas l'option valid de page en page.
0