Tutoriel Créer & configurer une page de rechargement de points avec DediPass

El Dios

Membre Premium
Premium
Inscription
21 Octobre 2013
Messages
1 688
Réactions
400
Points
6 921
    Réponse de El Dios Forums généraux Informatique ⌨️ Programmation Programmation web : Créer & configurer une page de rechargement de points avec DediPass
  • #1


Bonjour, bonsoir,

On se retrouve aujourd'hui pour un petit tutoriel assez rapide et simple.
Ce tutoriel aura pour but de créer une système de recharge de points avec le module Dedipass.
Qu'est-ce Dedipass? Dedipass est une solutions de paiements par SMS, audiotel, carte bancaire et cartes prépayées pour monétiser le contenu premium de votre site.
Tout d'abord, il va falloir que vous ayez créer le système de connexion à votre site, je vous laisse regarder
Vous devez vous inscrire ou vous connecter pour voir les liens ! (c'est gratuit et rapide 🚀)
si ce n'est pas déjà fait.

N'oubliez-pas de rajouter la colonne points à votre table membre.

Normalement, vous devez déjà avoir les pages login.php et register.php.
Vous allez créer la page index.php et vous allez mettre dedans​
PHP:
<?php

session_start();

include('includes/settings.php');

 if(isset($_SESSION['id'])){

} else {

header('Location: login.php');
exit();
}

?>
Vous allez faire la même chose pour la page valider.php.
Une fois cela de fait, vous allez mettre le code si dessous où vous souhaitez que le message de validation soit affiché.​
PHP:
<?php if(isset($validation)) { ?>
<?php echo $validation ?>
<?php } ?>
Une fois les pages de fait, on se rend sur
Vous devez vous inscrire ou vous connecter pour voir les liens ! (c'est gratuit et rapide 🚀)
.
Je vous laisse vous inscrire.
Une fois connecté, vous allez atterrir sur cette page, puis vous allez vous rendre dans la page services.
Connectez-vous ou inscrivez-vous dès maintenant. pour voir le contenu de ce spoiler !

Une fois sur la page Services, vous allez Ajouter un service.
Connectez-vous ou inscrivez-vous dès maintenant. pour voir le contenu de ce spoiler !

Vous choisirez Monnaie Virtuel.
Connectez-vous ou inscrivez-vous dès maintenant. pour voir le contenu de ce spoiler !

Dans l'url d'installation vous allez mettre la page où se trouvera le module de paiement.
Dans la section Paiement, vous choisissez Redirection puis vous allez mettre la page où vous serez redirigé si votre code est valide.

Connectez-vous ou inscrivez-vous dès maintenant. pour voir le contenu de ce spoiler !

Une fois cela de fait, vous allez atterrir sur la page Solutions de paiement.
À vous de remplir comme bon vous semble.

Connectez-vous ou inscrivez-vous dès maintenant. pour voir le contenu de ce spoiler !

Une fois que vous avez remplis vos prix etc, vous validez et vous atterrirez sur la page pour modifier l'apparence du module.

Connectez-vous ou inscrivez-vous dès maintenant. pour voir le contenu de ce spoiler !

À vous de personnaliser celui-ci. Une fois cela de fait, vous allez avoir les instructions d'installation.

Connectez-vous ou inscrivez-vous dès maintenant. pour voir le contenu de ce spoiler !

Je vous laisse installer comme il faut puis nous passerons à la mise en place du système de rechargement.
Nous allons remplacer les 3 echo par des $validation = "";

Ce qui vous donnera​
PHP:
$code = isset($_POST['code']) ? preg_replace('/[^a-zA-Z0-9]+/', '', $_POST['code']) : '';
if( empty($code) ) {
  $validation = 'Vous devez saisir un code';
}
else {
  $dedipass = file_get_contents('votre url perso');
  $dedipass = json_decode($dedipass);
  if($dedipass->status == 'success') {
    // Le transaction est validée et payée.
    // Vous pouvez utiliser la variable $virtual_currency
    // pour créditer le nombre de Points.
    $virtual_currency = $dedipass->virtual_currency;
    $validation = 'Le code est valide et vous êtes crédité de ' . $virtual_currency . 'Points';
  }
  else {
    // Le code est invalide
    $validation = 'Le code '.$code.' est invalide';
  }
}
Maintenant, nous allons faire un prepare qui éditera notre colonne points.
PHP:
$ValideCode = $bdd->prepare('UPDATE membres SET points = points + ? WHERE id = ?');
    $ValideCode->execute(array(''.$virtual_currency.'', $_SESSION['id']));
Donc, en gros, nous allons mettre à jour notre table membres dont la colonne est points, donc on ajoute à nos points actuel les points reçu à l'utilisateur comportant l'id de sa session.

Ici, '.$virtual_currency.' sert à ajouter le nombre de points acheté et $_SESSION['id'] à récupérer l'id de notre compte.

Une fois cela de fait, nous allons faire un système d'historique de paiement.
Vous allez créer une table historique_paiement comportant:
id en int 11 en auto increment avec une key
code
en varchar 8
et utilisateur en varchar 255

Connectez-vous ou inscrivez-vous dès maintenant. pour voir le contenu de ce spoiler !

Nous allons maintenant faire une autre prepare en INSERT INTO.​
PHP:
$HistoriquePaiement = $bdd->prepare('INSERT INTO historique_paiement(code, utilisateur) VALUES(?, ?)');
    $HistoriquePaiement->execute(array(''.$code.'', $_SESSION['utilisateur']));
Ici, on insère dans notre table historique_paiement les valeurs $code et $_SESSION['utilisateur'].
$code récupère le code entré.
$_SESSION['utilisateur'] récupère notre nom d'utilisateur.

Voilà le code final​
PHP:
<?php

session_start();

include'includes/settings.php';

if(isset($_SESSION['id'])){

} else {

header('Location: login.php');
exit();
  
}

$code = isset($_POST['code']) ? preg_replace('/[^a-zA-Z0-9]+/', '', $_POST['code']) : '';
if( empty($code) ) {
  $validation = 'Vous devez saisir un code';
}
else {
  $dedipass = file_get_contents('votre url perso);
  $dedipass = json_decode($dedipass);
  if($dedipass->status == 'success') {
    $virtual_currency = $dedipass->virtual_currency;
    $ValideCode = $bdd->prepare('UPDATE membres SET points = points + ? WHERE id = ?');
    $ValideCode->execute(array(''.$virtual_currency.'', $_SESSION['id']));
    $HistoriquePaiement = $bdd->prepare('INSERT INTO historique_paiement(code, utilisateur) VALUES(?, ?)');
    $HistoriquePaiement->execute(array(''.$code.'', $_SESSION['utilisateur']));
    $validation = 'Le code est valide et vous êtes crédité de ' . $virtual_currency . 'Points';
  }
  else {
    $validation = 'Le code '.$code.' est invalide';
  }
}
  
?>
Précision: Le code de test fournit OBLIGATOIREMENT 1 point, donc si vous pensez que c'est un bug, et bien, ce n'est pas le cas.

Bonne journée à vous :)
 

Rivals

Ancien staff
Ancien staff
Inscription
27 Août 2016
Messages
620
Réactions
518
Points
2 446
    Réponse de Rivals Forums généraux Informatique ⌨️ Programmation Programmation web : Créer & configurer une page de rechargement de points avec DediPass
  • #2
Super, bonne rédaction Mathis continue ainsi :)

Bonne journée,
Rivals
 

adel_xf

Membre Premium
Premium
Inscription
23 Mai 2015
Messages
489
Réactions
231
Points
3 234
    Réponse de adel_xf Forums généraux Informatique ⌨️ Programmation Programmation web : Créer & configurer une page de rechargement de points avec DediPass
  • #3
Belle présentation :)
5% de batterie :trollface:
 

Ezoh'

Helpeur
Premium
Inscription
12 Juillet 2016
Messages
2 027
Réactions
920
Points
2 871
    Réponse de Ezoh' Forums généraux Informatique ⌨️ Programmation Programmation web : Créer & configurer une page de rechargement de points avec DediPass
  • #4
Bonne rédac' ;) !

Bonne journée,
EZO
 

El Dios

Membre Premium
Premium
Inscription
21 Octobre 2013
Messages
1 688
Réactions
400
Points
6 921
    Réponse de El Dios Forums généraux Informatique ⌨️ Programmation Programmation web : Créer & configurer une page de rechargement de points avec DediPass
  • #5

MRN.

Membre Premium
Premium
Inscription
30 Juin 2015
Messages
1 191
Réactions
504
Points
3 301
    Réponse de MRN. Forums généraux Informatique ⌨️ Programmation Programmation web : Créer & configurer une page de rechargement de points avec DediPass
  • #8


Bonjour, bonsoir,

On se retrouve aujourd'hui pour un petit tutoriel assez rapide et simple.
Ce tutoriel aura pour but de créer une système de recharge de points avec le module Dedipass.

Tout d'abord, il va falloir que vous ayez créer le système de connexion à votre site, je vous laisse regarder
Vous devez vous inscrire ou vous connecter pour voir les liens ! (c'est gratuit et rapide 🚀)
si ce n'est pas déjà fait.

N'oubliez-pas de rajouter la colonne points à votre table membre.

Normalement, vous devez déjà avoir les pages login.php et register.php.
Vous allez créer la page index.php et vous allez mettre dedans​
PHP:
<?php

session_start();

include('includes/settings.php');

 if(isset($_SESSION['id'])){

} else {

header('Location: login.php');
exit();
}

?>
Vous allez faire la même chose pour la page valider.php.
Une fois cela de fait, vous allez mettre le code si dessous où vous souhaitez que le message de validation soit affiché.​
PHP:
<?php if(isset($validation)) { ?>
<?php echo $validation ?>
<?php } ?>
Une fois les pages de fait, on se rend sur
Vous devez vous inscrire ou vous connecter pour voir les liens ! (c'est gratuit et rapide 🚀)
.
Je vous laisse vous inscrire.
Une fois connecté, vous allez atterrir sur cette page, puis vous allez vous rendre dans la page services.
Connectez-vous ou inscrivez-vous dès maintenant. pour voir le contenu de ce spoiler !

Une fois sur la page Services, vous allez Ajouter un service.
Connectez-vous ou inscrivez-vous dès maintenant. pour voir le contenu de ce spoiler !

Vous choisirez Monnaie Virtuel.
Connectez-vous ou inscrivez-vous dès maintenant. pour voir le contenu de ce spoiler !

Dans l'url d'installation vous allez mettre la page où se trouvera le module de paiement.
Dans la section Paiement, vous choisissez Redirection puis vous allez mettre la page où vous serez redirigé si votre code est valide.

Connectez-vous ou inscrivez-vous dès maintenant. pour voir le contenu de ce spoiler !

Une fois cela de fait, vous allez atterrir sur la page Solutions de paiement.
À vous de remplir comme bon vous semble.

Connectez-vous ou inscrivez-vous dès maintenant. pour voir le contenu de ce spoiler !

Une fois que vous avez remplis vos prix etc, vous validez et vous atterrirez sur la page pour modifier l'apparence du module.

Connectez-vous ou inscrivez-vous dès maintenant. pour voir le contenu de ce spoiler !

À vous de personnaliser celui-ci. Une fois cela de fait, vous allez avoir les instructions d'installation.

Connectez-vous ou inscrivez-vous dès maintenant. pour voir le contenu de ce spoiler !

Je vous laisse installer comme il faut puis nous passerons à la mise en place du système de rechargement.
Nous allons remplacer les 3 echo par des $validation = "";

Ce qui vous donnera​
PHP:
$code = isset($_POST['code']) ? preg_replace('/[^a-zA-Z0-9]+/', '', $_POST['code']) : '';
if( empty($code) ) {
  $validation = 'Vous devez saisir un code';
}
else {
  $dedipass = file_get_contents('votre url perso);
  $dedipass = json_decode($dedipass);
  if($dedipass->status == 'success') {
    // Le transaction est validée et payée.
    // Vous pouvez utiliser la variable $virtual_currency
    // pour créditer le nombre de Points.
    $virtual_currency = $dedipass->virtual_currency;
    $validation = 'Le code est valide et vous êtes crédité de ' . $virtual_currency . 'Points';
  }
  else {
    // Le code est invalide
    $validation = 'Le code '.$code.' est invalide';
  }
}
Maintenant, nous allons faire un prepare qui éditera notre colonne points.
PHP:
$ValideCode = $bdd->prepare('UPDATE membres SET points = points + ? WHERE id = ?');
    $ValideCode->execute(array(''.$virtual_currency.'', $_SESSION['id']));
Donc, en gros, nous allons mettre à jour notre table membres dont la colonne est points, donc on ajoute à nos points actuel les points reçu à l'utilisateur comportant l'id de sa session.

Ici, '.$virtual_currency.' sert à ajouter le nombre de points acheté et $_SESSION['id'] à récupérer l'id de notre compte.

Une fois cela de fait, nous allons faire un système d'historique de paiement.
Vous allez créer une table historique_paiement comportant:
id en int 11 en auto increment avec une key
code
en varchar 8
et utilisateur en varchar 255

Connectez-vous ou inscrivez-vous dès maintenant. pour voir le contenu de ce spoiler !

Nous allons maintenant faire une autre prepare en INSERT INTO.​
PHP:
$HistoriquePaiement = $bdd->prepare('INSERT INTO historique_paiement(code, utilisateur) VALUES(?, ?)');
    $HistoriquePaiement->execute(array(''.$code.'', $_SESSION['utilisateur']));
Ici, on insère dans notre table historique_paiement les valeurs $code et $_SESSION['utilisateur'].
$code récupère le code entré.
$_SESSION['utilisateur'] récupère notre nom d'utilisateur.

Voilà le code final​
PHP:
<?php

session_start();

include'includes/settings.php';

if(isset($_SESSION['id'])){

} else {

header('Location: login.php');
exit();
  
}

$code = isset($_POST['code']) ? preg_replace('/[^a-zA-Z0-9]+/', '', $_POST['code']) : '';
if( empty($code) ) {
  $validation = 'Vous devez saisir un code';
}
else {
  $dedipass = file_get_contents('votre url perso);
  $dedipass = json_decode($dedipass);
  if($dedipass->status == 'success') {
    $virtual_currency = $dedipass->virtual_currency;
    $ValideCode = $bdd->prepare('UPDATE membres SET points = points + ? WHERE id = ?');
    $ValideCode->execute(array(''.$virtual_currency.'', $_SESSION['id']));
    $HistoriquePaiement = $bdd->prepare('INSERT INTO historique_paiement(code, utilisateur) VALUES(?, ?)');
    $HistoriquePaiement->execute(array(''.$code.'', $_SESSION['utilisateur']));
    $validation = 'Le code est valide et vous êtes crédité de ' . $virtual_currency . 'Points';
  }
  else {
    $validation = 'Le code '.$code.' est invalide';
  }
}
  
?>
Précision: Le code de test fournit OBLIGATOIREMENT 1 point, donc si vous pensez que c'est un bug, et bien, ce n'est pas le cas.

Bonne journée à vous :)
Très bien expliqué et détaillé, à l'avenir si j'en ai besoin je ferai ce codage ;)
 

Westiix

Fortnite Player || PHP & VB.NET
Premium
Inscription
5 Octobre 2011
Messages
2 152
Réactions
700
Points
8 443
    Réponse de Westiix Forums généraux Informatique ⌨️ Programmation Programmation web : Créer & configurer une page de rechargement de points avec DediPass
  • #9
Salut,

Super tutoriel mais à certains endroit, le code pourrait être "plus propre" :
<?php if(isset($validation)) { ?>
<?php
echo $validation ?>
<?php
} ?>

Avec une seul balise PHP :

PHP:
<?php
   if(isset($validation)) {
       echo $validation;
    }
?>
$ValideCode = $bdd->prepare('UPDATE membres SET points = points + ? WHERE id = ?');
$ValideCode->execute(array(''.$virtual_currency.'', $_SESSION['id']));
deviendrait :
PHP:
<?php
$ValideCode = $bdd->prepare('UPDATE membres SET points = points + ? WHERE id = ?');
    $ValideCode->execute(array($virtual_currency, $_SESSION['id']));
?>
Pareil pour le "INSERT" ... Rien de grave mais si on peut "alléger" (même un peu) les requêtes, autant le faire ;)
 

Julien Moreau

Lobby-Man
Premium
Inscription
5 Février 2013
Messages
1 736
Réactions
652
Points
6 950
    Réponse de Julien Moreau Forums généraux Informatique ⌨️ Programmation Programmation web : Créer & configurer une page de rechargement de points avec DediPass
  • #10
Salut,merci pour le tuto :)

Bonne journée,
Julien Moreau
 


Votre adresse email ne sera pas visible publiquement. Nous ne l'utiliserons que pour confirmer votre message.
Haut