Tutoriel N° 270
Création script allopass data et recall
Rendez vous sur le site allopass > connectez vous > mes produits > créer un nouveau document
Vous aurez 3 pages à paramétrer en php:
- PAGE DE PAIEMENT page_de_paiement.php
- PAGE DU PRODUIT ACHETE page_du_produit_achete.php
- PAGE PAIEMENT REFUSE paiement_refuse.php
Commencer par récuperer votre clé auth associé à votre produit: ######/#######/######
Vous pourrez ensuite choisir de placer un BOUTON d'achat qui ouvrira une popup javascript d'achat ou bien directement la BOX d'achat IFRAME
- Les 2 CAS pour la PAGE DE PAIEMENT
1/ BOUTON d'achat
Placer le code qu'allopass vous fournit
Ajouter comme suit votre variable data à transmettre à ALLOPASS
Remplacer data=5 par le contenu de la variable à transmettre
<!-- Begin Allopass Checkout-Button Code -->
<script type="text/javascript" src="https://payment.allopass.com/buy/checkout.apu?ids=289048&idd=1210180&lang=fr&data=5"></script>
<noscript>
<a href="https://payment.allopass.com/buy/buy.apu?ids=######&idd=#######&data=5" style="border:0">
<img src="https://payment.allopass.com/static/buy/button/fr/162x56.png" style="border:0" alt="Buy now!" />
</a>
</noscript>
<!-- End Allopass Checkout-Button Code -->
<script type="text/javascript" src="https://payment.allopass.com/buy/checkout.apu?ids=289048&idd=1210180&lang=fr&data=5"></script>
<noscript>
<a href="https://payment.allopass.com/buy/buy.apu?ids=######&idd=#######&data=5" style="border:0">
<img src="https://payment.allopass.com/static/buy/button/fr/162x56.png" style="border:0" alt="Buy now!" />
</a>
</noscript>
<!-- End Allopass Checkout-Button Code -->
2/ Box IFRAME
Placer le code qu'allopass vous fournit
Ajouter comme suit votre variable data à transmettre à ALLOPASS
<iframe width="550" height="480" frameborder="0" marginheight="0" marginwidth="0" scrolling="no" src="https://payment.allopass.com/buy/buy.apu?ids=######&idd=#######&data=5"></iframe>
- PAGE DU PRODUIT ACHETE
Voici la page à créer qui verifie le RECALL (vérification du code acheté) + récupération de la variable transmise data dans la variable php $id
<?
$RECALL = $_GET["RECALL"];
$id=$_GET['data'];
if( trim($RECALL) == "" )
{
// La variable RECALL est vide, renvoi de l'internaute
// vers une page d'erreur
#header( "Location: codeallopass404.php" );
exit(1);
}
// $RECALL contient le code d'accès
$RECALL = urlencode( $RECALL );
// $AUTH doit contenir l'identifiant de VOTRE document
$AUTH = urlencode( "######/#######/######" );
/**
* envoi de la requête vers le serveur AlloPAss
* dans la variable $r[0] on aura la réponse du serveur
* dans la variable $r[1] on aura le code du pays d'appel de l'internaute
* (FR,BE,UK,DE,CH,CA,LU,IT,ES,AT,...)
* Dans le cas du multicode, on aura également $r[2],$r[3] etc...
* contenant à chaque fois le résultat et le code pays.
*/
$r = @file( "http://payment.allopass.com/api/checkcode.apu?code=$RECALL&auth=$AUTH" );
// on teste la réponse du serveur
if( substr( $r[0],0,2 ) != "OK" )
{
// Le serveur a répondu ERR ou NOK : l'accès est donc refusé
header( "Location: paiement_refuse.php?id=".$id);
exit(1);
}
/**
* Le code est valide !
* on place un cookie appelé CODE_OK et qui vaut la valeur 1
* Ce cookie est valide jusqu'à ce que l'internaute ferme son navigateur
* Dans les pages suivantes, il n'y aura plus qu'à tester l'existence du cookie
* S'il existe, c'est que l'internaute est autorisé,
* sinon on le renverra sur une page d'erreur
*/
# Votre code php a executé
setCookie( "CODE_OK", "1", 0, "/", ".domaine.com", false );
?>
$RECALL = $_GET["RECALL"];
$id=$_GET['data'];
if( trim($RECALL) == "" )
{
// La variable RECALL est vide, renvoi de l'internaute
// vers une page d'erreur
#header( "Location: codeallopass404.php" );
exit(1);
}
// $RECALL contient le code d'accès
$RECALL = urlencode( $RECALL );
// $AUTH doit contenir l'identifiant de VOTRE document
$AUTH = urlencode( "######/#######/######" );
/**
* envoi de la requête vers le serveur AlloPAss
* dans la variable $r[0] on aura la réponse du serveur
* dans la variable $r[1] on aura le code du pays d'appel de l'internaute
* (FR,BE,UK,DE,CH,CA,LU,IT,ES,AT,...)
* Dans le cas du multicode, on aura également $r[2],$r[3] etc...
* contenant à chaque fois le résultat et le code pays.
*/
$r = @file( "http://payment.allopass.com/api/checkcode.apu?code=$RECALL&auth=$AUTH" );
// on teste la réponse du serveur
if( substr( $r[0],0,2 ) != "OK" )
{
// Le serveur a répondu ERR ou NOK : l'accès est donc refusé
header( "Location: paiement_refuse.php?id=".$id);
exit(1);
}
/**
* Le code est valide !
* on place un cookie appelé CODE_OK et qui vaut la valeur 1
* Ce cookie est valide jusqu'à ce que l'internaute ferme son navigateur
* Dans les pages suivantes, il n'y aura plus qu'à tester l'existence du cookie
* S'il existe, c'est que l'internaute est autorisé,
* sinon on le renverra sur une page d'erreur
*/
# Votre code php a executé
setCookie( "CODE_OK", "1", 0, "/", ".domaine.com", false );
?>
Sur vos autres pages vous pourrez vérifier si vous le souhaitez si le code a été acheté en consultant le cookie déposé
<?php
if( $HTTP_COOKIE_VARS['CODE_OK'] != '1')
{
header( "Location: erreur.html" );
exit(1);
}
?>
if( $HTTP_COOKIE_VARS['CODE_OK'] != '1')
{
header( "Location: erreur.html" );
exit(1);
}
?>