Playzer

Member
  • Content Count

    113
  • Joined

  • Last visited

  • Points

    -5 [ Donate ]

Community Reputation

2 Neutre

About Playzer

  • Rank
    Pirate
  • Birthday 05/28/1995

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Donc, j'ai décider de refaire tout de moi meme. Voici mon code : (Code fonctionnel) Mais maintenant je veux vérifier si l'entrepôt possède assez de place, mais malheuresement je ne sait pas trop comment m'y prendre // Si la valeur passé par l'url est numericif (isset($_GET['id']) AND !empty($_GET['id']) AND is_numeric($_GET['id'])) { // On procède à la vérification de la soumission du form if (isset($_POST['achat_item_accept'])) { // On définit les variables dans un tableau pour gérer les evenements d'erreur et de succes $erreurs = []; $succes = []; /* * 1 - On vérifie si le joueur possède un entrepot en donnant * comme paramètre la valeur si il existe dans le safebox. * * 2 - On vérifie s'il possède assez de monnaie * * 3 - On vérifie s'il possède assez de place dans son entrepôt * * 4 - Si aucune erreurs est détecté * * 5 - On insert l'item dans la table item */ // Vérification de l'existance d'un entrepôt // On prépare une requete afin de tous selectionner $requete = $pdo1->prepare("SELECT * FROM safebox WHERE account_id = :account_id"); // On passe en paramètres l'id de la session attribuer lors de la connexion $requete->bindParam(":account_id", $_SESSION['id']); // On execute le tout $requete->execute(); // On compte le nombre de ligne $recup_entrepot = $requete->rowCount(); // Si les lignes retourne 0 par apport à l'id de la session if ($recup_entrepot == 0) { // On lui affiche un jolie message d'erreur $erreurs[] = "Malheuresement, je ne peux pas donner suite à votre achat, vous n'avez dont pas d'entrepôt où stocker vos achats."; } // On fait une requete pour selectionner tous les champs des items de la boutique $rc = $pdo3->prepare("SELECT * FROM items WHERE id = :id"); // On passe en paramètres l'id passé par l'url qui correspond à l'id de l'item $rc->bindParam(":id", $_GET['id']); // On execute le tout $rc->execute(); // On fetch le tout $recup_coins = $rc->fetch(); if ($_SESSION['coins'] < $recup_coins->prix_item) { $erreurs[] = "Malheuresement, vous n'avez pas assez de monnaie pour acheter cette objet"; } // Si aucune erreurs est détecté if (empty($erreurs)) { // Insertion de l'item dans la table item } } include CHEMIN_VUE. 'achat_item.php';} else { include CHEMIN_VUE. 'erreur_index.php';}
  2. J'avais pensé à une sécurité en plus. J'ai tout refait, et j'ais fais ca : if (isset($_GET['id']) AND !empty($_GET['id']) AND is_numeric($_GET['id'])) { // On procède à la vérification de la soumission du form if (!empty($_POST)) { // On définit les variables dans un tableau pour gérer les evenements d'erreur et de succes $erreurs = []; $succes = []; /* * 1 - On vérifie si le joueur possède un entrepot en donnant * comme paramètre la valeur si il existe dans le safebox. * * 2 - On vérifie s'il possède assez de monnaie * * 3 - On vérifie s'il possède assez de place dans son entrepôt * * 4 - Si aucune erreurs est détecté * * 5 - On insert l'item dans la table item */ $sth = $pdo1->prepare("SELECT account_id FROM safebox WHERE account_id = :account_id"); $sth->bindParam(':account_id', $_SESSION['id']); $result = $sth->rowCount(); // S'il le joueur ne possède pas un entrepôt if ($result == 0) { $erreurs[] = "Vous n'avez pas d'entrepôt !"; } // On vérfieie s'il possède assez de monnaie } include CHEMIN_VUE. 'achat_item.php';} else { include CHEMIN_VUE. 'erreur_index.php';}
  3. J'ai donc fait ceci, mais sa me dit tout le temps que je n'ai pas d'entrepôt : if (isset($_GET['id']) AND !empty($_GET['id']) AND is_numeric($_GET['id'])) {if (isset($_POST['achat_item_accept'])) { $erreurs = []; $succes = []; // Si le membre a accepté l'achat // Vérification s'il a assez de monnaie $infossafe = $pdo1->prepare("SELECT COUNT (* ) AS nb_safebox FROM 'safebox' WHERE account_id = :account_id"); $infossafe->bindParam(':account_id', $_SESSION['id']); $infos_safebox = $infossafe->fetch(); // Si le joueur possède un entrepôt if ($infos_safebox->nb_safebox == 1){ //Si l'user a bien un entrepôt if (!empty($infos_safebox->password) AND $infos_safebox->password != '000000') { $pos = 0; $go = false; while ($go == false) { $req = $pdo1->prepare("SELECT COUNT(*) AS nb_pos FROM item WHERE owner_id = :owner_id AND pos = :pos AND window = 'MALL'"); $req->bindParam(':owner_id', $_SESSION['id']); $req->bindParam(':pos', $pos); $re = $req->fetch(); if ($re->nb_pos >= 1) { $pos++; // On débite les monnaies // On récupère toute les infos de l'objet $reqitem = $pdo3->prepare("SELECT * FROM items"); $reqitem->bindParam(":id", $_SESSION['id']); $recup_item = $reqitem->fetch(); // Si le compte possède la valeur en monnaie du prix de l'item ou plus if ($_SESSION['coins'] == $recup_item->prix_item AND $_SESSION['coins'] >= $recup_item->prix_item) { // On crédite Les monnaies du compte - le prix de l'item $resultat = $_SESSION['coins'] - $recup_item->prix_item; // On update le nouveau resultat $req1 = $pdo->prepare("UPDATE account SET coins = :coins WHERE id = :id"); $req1->bindParam(':coins', $resultat); $req1->bindParam(':id', $_SESSION['id']); $req1->execute(); $succes[] = "Votre objet a bien été placé dans votre entrepôt spécial !"; } } else { $go = true; } } if ($pos >= (44 - $nb_item)) { $erreurs[] = "Votre entrepôt est plein !"; } } else { $erreurs[] = "Vous n'avez pas saisi de mot de passe pour votre entrepôt spécial. Merci d'aller voir le magasinier pour en définir un. (Ceci est pour éviter une erreur de notre part)."; } } else { // Sinon $erreurs[] = "Vous ne possédez pas encore d'entrepôt, aller voir le mgasinier en jeu et revenez !"; }}include CHEMIN_VUE. 'achat_item.php';} else {include CHEMIN_VUE. 'erreur_index.php';}
  4. D'accord merci Galet, je vais essayer
  5. Bonjour Galet, pourrais-tu être plus explicite s'il te plaît ?
  6. Un énorme merci Takuma, tu as bien mérité ton pouce vert ! Je vais tester tout ca et je te dis. -- Laissez le post ouvert svp --
  7. Bonjour à tous et à toute ! En ce moment même, je développe un système d'item-shop (Web). J'ai déjà créer : - Connexion - Apercu des catégories - Apercu des sous catégorie en ayant sa catégorie parente - Apercu des item de la sous catégorie - Panel Administrateur Comme vous pouvez le voir, il me manque la partie pour l'achat d'un item, donc je me pose plusieurs question : - Quel traitement dois-je faire ? - Comment l'item va se loger directement dans l'inventaire item-shop (In Game) ? - Une base de données existe pour cela ? Je vous remercie par avance, de toute aide que vous pourriez me proposer, Cordialement,
  8. Cette quête a été créer par moi, je l'ai testé sous files 2012, 2013, 2014, 2016 et elle est fonctionnel. Elle a même été testé par plusieurs Developpeur. Quand je donne une de mes créations, je m'assure qu'elle fonctionne. A moins que tu remette en cause mon travail ?
  9. Je veux juste pouvoir avoir acces au différents modules : -Lancement du client - Connexion - Sélection d'Empire - Sélection de Personnage - Création de personnage
  10. J'ai du mal m'exprimer désolé. En faite j'ai deux clients. - Un client ou je ferais plein de test et un ou je garde en sauvegarde qui est complet. Sur mon client de test je veux garder que les fichiers qui correspondent au modules suivants : -Lancement du client - Connexion - Sélection d'Empire - Sélection de Personnage - Création de personnage Tous les autres fichiers je veux les virer. Merci.
  11. Je te remercie de ta réponse ainsi rapide. Ce que je voualit savoir c'est tout les fichiers. Les fichiers cités comme tu viens de le faire je le savais ça. Je cherche les fichiers indispensable. Surement Ui ?
  12. D'accord merci beaucoup, je comrpend mieux. Maintenant j'aurais besoin de savoir si quelqu'un pourrait me dire quels sont les fichiers d'un client qui permettent d'afficher le client, l'interface de connexion, selectempire, selectperso, et creation de personnage.
  13. Veuillez m'excuser du double-post Ps : J'avais oublié, j'aurais besoin de savoir quel sont les fichiers qui permettent le lancement du client ?
  14. Merci beaucoup de ta réponse qui m'aide beaucoup Kijaru. Je t'en remercie. J'aurais une question. Si genre je voudrais reproduire un GUI (Graphical User Interface) déjà existant. Quel sont les fichiers à reproduire ? Quel code ? Que Partie ?