Jump to content
×
×
  • Create New...
  • 0

Rechargement


valent76
 Share

Question

[Message d'introduction]

 

Version des files : 2012

Domaine (Base de données, Core, etc.) : Site

Votre niveau (débutant, intermédiaire, avancé) : intermédiaire

 

Description du problème : Je viens de finir mon site mais il me reste un problème je n'arrive pas a faire la page de rechargement de compte .

Comment reproduire le problème :

Recherches et tests effectué : crée la table conf_is sous un autre nom

Résultat des recherches et tests :Aucun résultats

 

Message d'erreur, capture d'écran : 113832Sans-titre-1.jpg

 

En postant ma demande d'aide, j'affirme avoir lu et accepté le règlement des demandes d'aides.

Link to comment
Share on other sites

  • Answers 17
  • Created
  • Last Reply

Top Posters For This Question

17 answers to this question

Recommended Posts

  • 0

Essaye de te faire un compte Paypal ou StarPass et de mettre les codes qu'ils te donnent... Si tu sais pas coder, vaut mieux demander à un pro... Je suis pas trop dispo :( désolé...

Link to comment
Share on other sites

  • 0

Je suis pas un codeur php mais je m'y connais un peu en base de données et je dirais que: '@'localhost'

 

Signifie que tu n'as pas d'utilisateur renseigné pour faire afficher ta table payement.

Si jamais tu as bien un utilisateur de renseigné alors c'est qu'il n'a pas les droits de consulter la table.

Link to comment
Share on other sites

  • 0

Je n'ai pas bien compris comment precisé l'utilisateur et le mot de pass voici ma page Rechargement.php

 

<?php if($key_secu != "Kotus&MonsterSontGeniaux:[email protected]$") { exit(); }
/**
*		MT2-CMS
*	@author JigSaw 
*	@license http://creativecommons.org/licenses/by-nc-sa/2.0/fr/
*	@version b1.002 24/04/2010
*	@link http://mt2cms.free.fr
*
*		[payement.php]
*	Page de Recharge de compte. Cette page permet aux joueurs de recharger leurs comptes en Cash.
*	L'achat se fait via Allopass. La configuration se fait sur 'config_is.php'
*
**/


/**
*Configuration de l'IS
**/
$sql = mysql_query("SELECT * FROM website.payement LIMIT 1") or die (mysql_error());
$CONFIG_is = mysql_fetch_array($sql);
foreach ($CONFIG_is as $k => $v)
{
if(!is_numeric($k))
{
$tpl->assign('config_is_'.$k, $v);
}
}
//On met le payement a false
$payement=false;

/**
*Si on Utilise Allopass
**/
if($CONFIG_is['method'] == 1)
{
/**
 *Si on recoit un payement validé
 **/
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" );

	//Si le code est validé, on crédite le compte
	if( substr( $r[0],0,2 ) == "OK" )
	{	
		$payement=true;
	}
	// Sinon on affiche un essage d'erreur
	else 
	{
		$tpl->assign('valid_pay', 'nok');

	}

}
/**
 *Si on recoit un payement érroné
 **/
elseif(isset($_GET['valid']) and $_GET['valid']=='nok')
{
	$tpl->assign('valid_pay', 'nok');
}
/**
 *Si on ne recoit pas de  payement
 **/
else
{
	$tpl->assign('valid_pay', '0');
}

}
/**
*Si on Utilise Starpass
**/
if($CONFIG_is['method'] == 2)
{
/**
 *Si on  a envoyé le code
 **/
if(isset($_POST['idd']) and $_GET['valid']=='ok')
{	
	//Déclaration des variables
	$ident=$idp=$ids=$idd=$codes=$code1=$code2=$code3=$code4=$code5=$datas='';
	//On récupère les identifiants sous la forme "xxx;xxx;xxx"
	if(isset($_POST['idp'])) $idp = $_POST['idp'];
	if(isset($_POST['ids'])) $ids = $_POST['ids'];
	//$ids n'est plus utilisé, mais il faut conserver la variable pour une question de compatibilité
	if(isset($_POST['idd'])) $idd = $_POST['idd'];
	$ident=$idp.";".$ids.";".$idd;
	//On récupère le(s) code(s) sous la forme "xxxxxxxx;xxxxxxxx"
	if(isset($_POST['code1'])) $code1 = $_POST['code1'];
	if(isset($_POST['code2'])) $code2 = ";".$_POST['code2'];
	if(isset($_POST['code3'])) $code3 = ";".$_POST['code3'];
	if(isset($_POST['code4'])) $code4 = ";".$_POST['code4'];
	if(isset($_POST['code5'])) $code5 = ";".$_POST['code5'];
	$codes=$code1.$code2.$code3.$code4.$code5;
	//On récupère le champ DATAS"
	if(isset($_POST['DATAS'])) $datas = $_POST['DATAS'];
	//On encode les trois chaines en URL
	$ident=urlencode($ident);
	$codes=urlencode($codes);
	$datas=urlencode($datas);

	/* Envoie de la requête vers le serveur StarPass
	Dans la variable tab[0] on récupère la réponse du serveur
	Dans la variable tab[1] on récupère l'URL d'accès ou d'erreur suivant la réponse du serveur */
	[email protected]("http://script.starpass.fr/check_php.php?ident=$ident&codes=$codes&DATAS=$datas");
	//Si on contact le serveur
	if($get_f)
	{
		$tab = explode("|",$get_f[0]);

		// dans $pays on a le pays de l'offre. exemple "fr"
		$pays = $tab[2];
		// dans $palier on a le palier de l'offre. exemple "Plus A"
		$palier = urldecode($tab[3]);
		// dans $id_palier on a l'identifiant de l'offre
		$id_palier = urldecode($tab[4]);
		// dans $type on a le type de l'offre. exemple "sms", "audiotel, "cb", etc.
		$type = urldecode($tab[5]);
		// vous pouvez à tout moment consulter la liste des paliers à l'adresse : http://script.starpass.fr/palier.php

		//Si $tab[0] répond "OUI" 
		if(substr($tab[0],0,3) == "OUI")
		{
			   $payement=true;

		}
		else
		{
			$tpl->assign('valid_pay', 'nok');
		}
	}
	else
	{
		$tpl->assign('valid_pay', 'error');
	}
}

/**
 *Si on ne recoi pas de payement
 **/
else
{
	$tpl->assign('valid_pay', '0');
}
}

/**
*Sinon on désactive
**/
else
{
//Action en début du fichier payement.tpl
}

/**
*On teste si le payement est OK
*Si oui, on crédite le compte
**/
if($payement)
{
$sql="UPDATE account.account SET cash = cash+".$CONFIG_is['nb_cash']." WHERE id = $id_membre";
mysql_query($sql) or die (mysql_error());

$tpl->assign('valid_pay', 'ok');
}




$tpl->parse('account/payement.tpl');
?>

Link to comment
Share on other sites

  • 0

Non mais par contre j'ai : B584zdiu_b.php et config.php les voici :B584zdiu_b.php

<?php//Clef de sécurité$key_secu = "Kotus&MonsterSontGeniaux:[email protected]$";//Initialisation Sessionsession_start();// Logs de connexion à la base de donnéedefine("ip","25.227.125.100");define("login","devil0513");define("pass","01310513");?>

config.php

<?phprequire ('B584zdiu_b.php');require ('function.php');if(!bdd('account')->query("SELECT login FROM account LIMIT 1")->fetch()){    echo'Le serveur est actuellement en maintenance.
Pour plus d\'information rendez-vous sur notre forum.';    exit();}?>

Link to comment
Share on other sites

  • 0

Voila :

<?phpfunction bdd($l) {    $d = NEW PDO('mysql:host=' . ip . ';dbname=' . $l, login, pass);    $d->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);    return $d;}function test($i, $p) {    $online = @fsockopen($i, $p, $errno, $errstr, 1);    if (!$online) {        $stat = false;    } else {        $stat = true;    }    @fclose($online);    return $stat;}function protect($l) {    return $l;}function existe($ndc) {    $query = bdd('account')->prepare("SELECT * FROM account WHERE login=:ndc");    $query->bindValue(":ndc", $ndc, PDO::PARAM_STR);    $query->execute();    if ($query->fetch()) {        return true;    } else {        return false;    }    $query->closeCursor();}function is_connecter() {    if (isset($_SESSION['connect']) and $_SESSION['connect'] == true)        return true; else        return false;}function connecter($login) {    $l = protect($login);    $rep = bdd('account')->query("SELECT * FROM account WHERE login='$l'")->fetch();    $_SESSION['connect'] = true;    $_SESSION['test'] = 'test';    $_SESSION['id'] = $rep['id'];    $_SESSION['pseudo'] = $l;    $_SESSION['cash'] = $rep['cash'];}function joueur_guilde($id) {    $query = bdd('player')->query("SELECT guild_id FROM guild_member WHERE pid=$id");    if ($que = $query->fetch()) {        $idg = $que['guild_id'];        $query2 = bdd('player')->query("SELECT name FROM guild WHERE id=$idg");        $quer = $query2->fetch();        $guilde = $quer['name'];    }    else        $guilde = "Aucune";    return $guilde;}function joueur_empire($id) {    $query = bdd('player')->query("SELECT empire FROM player_index WHERE pid1=$id or pid2=$id or pid3=$id or pid4=$id");    if ($que = $query->fetch()) {        $empire = $que['empire'];    }    else        $empire = 0;    return $empire;}function Genere_Password($size) {    $password = '';    // Initialisation des caract�res utilisables    $characters = array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z");    for ($i = 0; $i < $size; $i++) {        $password .= ($i % 2) ? strtoupper($characters[array_rand($characters)]) : $characters[array_rand($characters)];    }    return $password;}function job($id_player, $bdd) {    $job[] = array('', '', '');    $job[] = array('', '', '');    $job[] = array('', '', '');    $job[] = array('', '', '');    $job[] = array('', '', '');    $job[] = array('', '', '');    $job[] = array('', '', '');    $job[] = array('', '', '');    $my_job = $bdd->query("SELECT skill_group As job,job As job1 FROM player WHERE id ='$id_player'")->fetch();    return $job[$my_job['job1']][$my_job['job']];}function race($id_player, $bdd) {    $races = array('        ',        '',        '',        '',        '',        '',        '',        '');    $my_race = $bdd->query("SELECT job FROM player WHERE id='$id_player'")->fetch();    return $races[$my_race['job']];}function emp($id_player) {    if ($query = bdd('player')->query("SELECT empire FROM player_index WHERE pid1 ='$id_player' or pid2 ='$id_player' or pid3 ='$id_player' or pid4 ='$id_player' ")->fetch()) {        $empires = array('', '', '', '');        return $empires[$query['empire']];    } else        return 'Aucun';}function guild($id_player) {    if ($guild_id = bdd('player')->query("SELECT * FROM guild_member WHERE pid='$id_player'")->fetch()) {        $guild_id = $guild_id['guild_id'];        $guild_name = bdd('player')->query("SELECT * FROM guild WHERE id = '$guild_id' ")->fetch();        return $guild_name['name'];    }    else        return 'Aucune';}function pourcentage($Nombre, $Total) {    $value = $Nombre * 100 / $Total;    $value_ret = number_format($value, 2);    return $value_ret;}function dateConv($value) {    $final = strftime('%d-%m-%y a %H:%M:%S', strtotime($value)); // %T �quivaut au format d'heure HH:MM:SS    print_r($final);}$array_bonus_items = array(    '1' => 'gold_expire',    '2' => 'silver_expire',    '3' => 'safebox_expire',    '4' => 'autoloot_expire',    '5' => 'fish_mind_expire',    '6' => 'marriage_fast_expire',    '7' => 'money_drop_rate_expire');$array_bonus_images = array(    'gold_expire' => '',    'silver_expire' => '',    'safebox_expire' => '',    'autoloot_expire' => '',    'fish_mind_expire' => '',    'marriage_fast_expire' => '',    'money_drop_rate_expire' => '');$itemSteine = array(    '1' => 'Libre',    '28960' => 'Pierre Cassé',    '28030' => 'Pierre de Pénétration +0',    '28130' => 'Pierre de Pénétration +1',    '28230' => 'Pierre de Pénétration +2',    '28330' => 'Pierre de Pénétration +3',    '28430' => 'Pierre de Pénétration +4',    '28530' => 'Pierre de Pénétration +5',    '28630' => 'Pierre de Pénétration +6',    '81050' => 'Pierre de Pénétration +7',    '28031' => 'Pierre de Souffle Mortel +0',    '28131' => 'Pierre de Souffle Mortel +1',    '28231' => 'Pierre de Souffle Mortel +2',    '28331' => 'Pierre de Souffle Mortel +3',    '28431' => 'Pierre de Souffle Mortel +4',    '28531' => 'Pierre de Souffle Mortel +5',    '28631' => 'Pierre de Souffle Mortel +6',    '81051' => 'Pierre de Souffle Mortel +7',    '28032' => 'Pierre d\'Apaisement +0',    '28132' => 'Pierre d\'Apaisement +1',    '28232' => 'Pierre d\'Apaisement +2',    '28332' => 'Pierre d\'Apaisement +3',    '28432' => 'Pierre d\'Apaisement +4',    '28532' => 'Pierre d\'Apaisement +5',    '28632' => 'Pierre d\'Apaisement +6',    '81052' => 'Pierre d\'Apaisement +7',    '28033' => 'Pierre Anti-Guerrier +0',    '28133' => 'Pierre Anti-Guerrier +1',    '28233' => 'Pierre Anti-Guerrier +2',    '28333' => 'Pierre Anti-Guerrier +3',    '28433' => 'Pierre Anti-Guerrier +4',    '28533' => 'Pierre Anti-Guerrier +5',    '28633' => 'Pierre Anti-Guerrier +6',    '28034' => 'Pierre Anti-Ninja +0',    '28134' => 'Pierre Anti-Ninja +1',    '28234' => 'Pierre Anti-Ninja +2',    '28334' => 'Pierre Anti-Ninja +3',    '28434' => 'Pierre Anti-Ninja +4',    '28534' => 'Pierre Anti-Ninja +5',    '28634' => 'Pierre Anti-Ninja +6',    '28035' => 'Pierre Anti-Sura +0',    '28135' => 'Pierre Anti-Sura +1',    '28235' => 'Pierre Anti-Sura +2',    '28335' => 'Pierre Anti-Sura +3',    '28435' => 'Pierre Anti-Sura +4',    '28535' => 'Pierre Anti-Sura +5',    '28635' => 'Pierre Anti-Sura +6',    '28036' => 'Pierre Anti-Shaman +0',    '28136' => 'Pierre Anti-Shaman +1',    '28236' => 'Pierre Anti-Shaman +2',    '28336' => 'Pierre Anti-Shaman +3',    '28436' => 'Pierre Anti-Shaman +4',    '28536' => 'Pierre Anti-Shaman +5',    '28636' => 'Pierre Anti-Shaman +6',    '28037' => 'Pierre Anti-Monstres +0',    '28137' => 'Pierre Anti-Monstres +1',    '28237' => 'Pierre Anti-Monstres +2',    '28337' => 'Pierre Anti-Monstres +3',    '28437' => 'Pierre Anti-Monstres +4',    '28537' => 'Pierre Anti-Monstres +5',    '28637' => 'Pierre Anti-Monstres +6',    '28038' => 'Pierre d\'Evasion +0',    '28138' => 'Pierre d\'Evasion +1',    '28238' => 'Pierre d\'Evasion +2',    '28338' => 'Pierre d\'Evasion +3',    '28438' => 'Pierre d\'Evasion +4',    '28538' => 'Pierre d\'Evasion +5',    '28638' => 'Pierre d\'Evasion +6',    '28039' => 'Pierre d\'Esquive +0',    '28139' => 'Pierre d\'Esquive +1',    '28239' => 'Pierre d\'Esquive +2',    '28339' => 'Pierre d\'Esquive +3',    '28439' => 'Pierre d\'Esquive +4',    '28539' => 'Pierre d\'Esquive +5',    '28639' => 'Pierre d\'Esquive +6',    '28040' => 'Pierre de Magie +0',    '28140' => 'Pierre de Magie +1',    '28240' => 'Pierre de Magie +2',    '28340' => 'Pierre de Magie +3',    '28440' => 'Pierre de Magie +4',    '28540' => 'Pierre de Magie +5',    '28640' => 'Pierre de Magie +6',    '28041' => 'Pierre de Vie +0',    '28141' => 'Pierre de Vie +1',    '28241' => 'Pierre de Vie +2',    '28341' => 'Pierre de Vie +3',    '28441' => 'Pierre de Vie +4',    '28541' => 'Pierre de Vie +5',    '28641' => 'Pierre de Vie +6',    '28042' => 'Pierre de Défense +0',    '28142' => 'Pierre de Défense +1',    '28242' => 'Pierre de Défense +2',    '28342' => 'Pierre de Défense +3',    '28442' => 'Pierre de Défense +4',    '28542' => 'Pierre de Défense +5',    '28642' => 'Pierre de Défense +6',    '28043' => 'Pierre de Hà¢te +0',    '28143' => 'Pierre de Hà¢te +1',    '28243' => 'Pierre de Hà¢te +2',    '28343' => 'Pierre de Hà¢te +3',    '28443' => 'Pierre de Hà¢te +4',    '28543' => 'Pierre de Hà¢te +5',    '28643' => 'Pierre de Hà¢te +6',    '90102' => 'Pierre de Force +7',    '90105' => 'Pierre d\'Intelligence +7');$itemBoni = array(    '0' => 'Vide',    '1' => 'Max PV',    '2' => 'Max PM',    '3' => 'Vitalité',    '4' => 'Intelligence',    '5' => 'Force',    '6' => 'Dexterité',    '7' => 'vitesse d\'attaque',    '8' => 'Vitesse de déplacement',    '9' => 'Vitesse des sorts',    '10' => 'Régénération des PV',    '11' => 'Régénération des PM',    '12' => 'Chance d\'empoisonnement ',    '13' => 'Chance de Stunt',    '14' => 'Chance de ralentissement',    '15' => 'Chance de faire un Coup Critique',    '16' => 'Chance de faire un Coups Perçant',    '17' => 'Force contre les demi-hommes',    '18' => 'Force contre les animaux',    '19' => 'Force contre les Orcs',    '20' => 'Force contre ésotérique',    '21' => 'Force contre les morts-vivants',    '22' => 'Force contre les Démons',    '23' => 'Dégats absorbés par les PV',    '24' => 'Dégats absorbés par les PM',    '25' => 'Chance de prendre les PM de l\'adversaire',    '26' => 'Chance de récupération des PM',    '27' => 'Chance de bloquer une attaque physique',    '28' => 'Chance d\'éviter les flèches',    '29' => 'Défense a L\'Epee',    '30' => 'Défense Epee a deux mains',    '31' => 'Défense a la Dague',    '32' => 'Défense au Gong',    '33' => 'Résistance aux Spécialistes',    '34' => 'Résistance aux Flèches',    '35' => 'Résistance au Feu',    '36' => 'Résistance à la Lumière',    '37' => 'Résistance à la Magie',    '38' => 'Résistance au Vent',    '39' => 'Chances de détourner une attaque physique',    '40' => 'Chance de détourner une Malédiction',    '41' => 'Résistance contre le Poison',    '42' => 'Chances de restaurer les PM',    '43' => 'Chances d\'avoir un Bonus XP',    '44' => 'Chances de Double Yangs',    '45' => 'Chances de dropper le double d\'objets',    '46' => 'Trank effekt zuwachs',    '47' => 'Chance TP wiederherrzustellen',    '48' => 'Anti-stunt',    '49' => 'Anti-ralentissement',    '50' => 'Imun gegen Stà¼rzen',    '52' => 'Bogenreichweite +',    '53' => 'Valeur d\'attaque +',    '54' => 'Point de défense +',    '55' => 'Magischer AW',    '56' => 'Magische Verteidigung',    '58' => 'Max. Ausdauer',    '59' => 'Bonus contre les Guerriers',    '60' => 'Bonus contre les Ninjas',    '61' => 'Bonus contre les Suras',    '62' => 'Bonus contre les Shamans',    '63' => 'Bonus contre les Monstres',    '64' => 'Angriffswert +?',    '65' => 'Verteidigung',    '66' => 'EXP +?%',    '67' => 'Dropchance [Gegenstà¤nde]',    '68' => 'Dropchance [Gold]',    '71' => 'Degats de Compétences',    '72' => 'Degats Moyens',    '73' => 'Widerstand gegen Fertigkeitsschaden',    '74' => 'durchschn. Schadenswiderstand',    '76' => 'iCafe exp-bonus',    '77' => 'iCafe Chance auf erbeuten von gegenstà¤nden',    '78' => 'Chances de bloquer une attaque Guerrier',    '79' => 'Chances de bloquer une attaque Ninja',    '80' => 'Chances de bloquer une attaque Sura',    '81' => 'Chances de bloquer une attaque Shaman');function align($align) {    if ($align >= '12000') {        return 'Chevalier';    } elseif ($align >= '8000') {        return 'Noble';    } elseif ($align >= '4000') {        return 'Bon';    } elseif ($align >= '1000') {        return 'Amical';    } elseif ($align >= '0') {        return 'Neutre';    } elseif ($align < '0') {        return 'Aggresif';    } elseif ($align > '-4000') {        return 'Retord';    } elseif ($align > '-8000') {        return 'Malicieux';    } elseif ($align > '-12000') {        return 'Cruel';    }}function verif_place_is($account_id, $nb_item = 1) {    if (is_numeric($account_id)) {        $donnees = bdd('player')->query("SELECT COUNT(*) AS nb_safebox FROM `safebox` WHERE account_id = '$account_id'")->fetch();        if ($donnees['nb_safebox'] == 1) {//Si l'user a bien un entrepôt            $pos = 0;            $go = false;            while ($go == false) {                $donnees = bdd('player')->query("SELECT COUNT(*) AS nb_pos FROM item WHERE owner_id = '$account_id' AND pos = '$pos' AND window = 'MALL'")->fetch();                if ($donnees['nb_pos'] >= 1) {                    $pos++;                } else {                    $go = true;                }            }                return $pos;            if ($pos > (44 - $nb_item)) {                $erreur = "
L'entrepot est plein.";                return $erreur.$pos;            } // Si le MALL est plein            else {                return $pos;            } // On renvoi le numéro de la position libre        } else {            $erreur = "
Vous n'avez pas d'entrepot.";                return $erreur;        }    } else {        $erreur = "
Une erreur c'est produite.";        return $erreur;    } // Si account n'est pas un chiffre}function verifie_emplacement($emplacement, $item, $id_joueur) {    if (bdd('player')->query("SELECT * FROM item WHERE owner_id = '$id_joueur' AND window ='MALL' AND pos='$emplacement' ORDER By ID")->fetch())        return false;    else {        $taille_de_my_item = bdd('player')->query("SELECT * FROM item_proto WHERE vnum='$item'");        $taille_de_my_item = $taille_de_my_item->fetch();        $taille_de_my_item = $taille_de_my_item['size'];        $emplacement_mok = ($emplacement + (5 * $taille_de_my_item));        $m = $emplacement + 5;        $go = true;        while ($m < 45 and $go) {            if ($search_objet = bdd('player')->query("SELECT * FROM item WHERE owner_id ='$id_joueur' AND window ='MALL' and pos='$m'")->fetch()) {                $searcher_objet = true;                $place = $search_objet['pos'];                $id = $search_objet['vnum'];                $go = false;            }            $m += 5;        }        if (isset($searcher_objet)) {            if ($place > $emplacement_mok) {                $pass = true;            } else {                $pass = false;                return false;            }        }        else            $pass = true;        if ($pass) {            if ($emplacement > 5) {                $continue = true;                $m = $emplacement - 5;                while ($m > 0 and $continue) {                    if ($trouve_objet = bdd('player')->query("SELECT * FROM item WHERE owner_id ='$id_joueur' AND window ='MALL' and pos='$m'")->fetch()) {                        $trouver_objet = true;                        $place = $trouve_objet['pos'];                        $continue = false;                    }                    $m -= 5;                }                if (!$trouver_objet)                    return true;                else {                    $item = $trouve_objet['vnum'];                    $query = bdd('player')->query("SELECT * FROM item_proto WHERE vnum='$item'")->fetch();                    $taille = $query['size'];                    if (($place + (5 * $taille)) < $emplacement)                        return true;                }            }            else                return true;        }    }}function achat($id_item, $id_joueur, $nombre, $cout) {    $stop = true;    for ($x = 0; $x < 45 and $stop; $x++) {        if (verifie_emplacement($x, $id_item, $id_joueur)) {            $stop = false;            if (bdd('player')->exec("INSERT INTO item(owner_id,window,pos,count,vnum,socket0,socket1,socket2,socket3,socket4,socket5)VALUES('$id_joueur','MALL','$x','$nombre','$id_item','1','1','1','1','1','1')")) {                $upd_acc = bdd('account')->prepare("UPDATE account SET cash =cash-:cout WHERE id =:idj ");                $upd_acc->bindValue(":cout", $cout, PDO::PARAM_INT);                $upd_acc->bindValue(":idj", $id_joueur, PDO::PARAM_INT);                $upd_acc->errorInfo();                if ($upd_acc->execute()) {                    bdd('website')->exec("INSERT INTO logs_item_shop(id_item,nombre,prix,account,date) VALUES ('$id_item','$nombre','$cout','$id_joueur',NOW()) ");                    return true;                } else {                    return false;                }            }            return false;        }    }    if ($stop) {        return false;    }}?>

Link to comment
Share on other sites

  • 0

Ton site utilise PDO.

 

Essaie comme ça :

 

<?php if($key_secu != "Kotus&MonsterSontGeniaux:[email protected]$") { exit(); }
/**
*        MT2-CMS
*    @author JigSaw 
*    @license http://creativecommons.org/licenses/by-nc-sa/2.0/fr/
*    @version b1.002 24/04/2010
*    @link http://mt2cms.free.fr
*
*        [payement.php]
*    Page de Recharge de compte. Cette page permet aux joueurs de recharger leurs comptes en Cash.
*    L'achat se fait via Allopass. La configuration se fait sur 'config_is.php'
*
**/


/**
*Configuration de l'IS
**/
$sql = bdd('website')->query("SELECT * FROM payement LIMIT 1");
$CONFIG_is = $sql->fetch();
foreach ($CONFIG_is as $k => $v)
{
   if(!is_numeric($k))
   {
   $tpl->assign('config_is_'.$k, $v);
   }
}
//On met le payement a false
$payement=false;

/**
*Si on Utilise Allopass
**/
if($CONFIG_is['method'] == 1)
{
   /**
    *Si on recoit un payement validé
    **/
   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" );

       //Si le code est validé, on crédite le compte
       if( substr( $r[0],0,2 ) == "OK" )
       {    
           $payement=true;
       }
       // Sinon on affiche un essage d'erreur
       else 
       {
           $tpl->assign('valid_pay', 'nok');

       }

   }
   /**
    *Si on recoit un payement érroné
    **/
   elseif(isset($_GET['valid']) and $_GET['valid']=='nok')
   {
       $tpl->assign('valid_pay', 'nok');
   }
   /**
    *Si on ne recoit pas de  payement
    **/
   else
   {
       $tpl->assign('valid_pay', '0');
   }

}
/**
*Si on Utilise Starpass
**/
if($CONFIG_is['method'] == 2)
{
   /**
    *Si on  a envoyé le code
    **/
   if(isset($_POST['idd']) and $_GET['valid']=='ok')
   {    
       //Déclaration des variables
       $ident=$idp=$ids=$idd=$codes=$code1=$code2=$code3=$code4=$code5=$datas='';
       //On récupère les identifiants sous la forme "xxx;xxx;xxx"
       if(isset($_POST['idp'])) $idp = $_POST['idp'];
       if(isset($_POST['ids'])) $ids = $_POST['ids'];
       //$ids n'est plus utilisé, mais il faut conserver la variable pour une question de compatibilité
       if(isset($_POST['idd'])) $idd = $_POST['idd'];
       $ident=$idp.";".$ids.";".$idd;
       //On récupère le(s) code(s) sous la forme "xxxxxxxx;xxxxxxxx"
       if(isset($_POST['code1'])) $code1 = $_POST['code1'];
       if(isset($_POST['code2'])) $code2 = ";".$_POST['code2'];
       if(isset($_POST['code3'])) $code3 = ";".$_POST['code3'];
       if(isset($_POST['code4'])) $code4 = ";".$_POST['code4'];
       if(isset($_POST['code5'])) $code5 = ";".$_POST['code5'];
       $codes=$code1.$code2.$code3.$code4.$code5;
       //On récupère le champ DATAS"
       if(isset($_POST['DATAS'])) $datas = $_POST['DATAS'];
       //On encode les trois chaines en URL
       $ident=urlencode($ident);
       $codes=urlencode($codes);
       $datas=urlencode($datas);

       /* Envoie de la requête vers le serveur StarPass
       Dans la variable tab[0] on récupère la réponse du serveur
       Dans la variable tab[1] on récupère l'URL d'accès ou d'erreur suivant la réponse du serveur */
       [email protected]("http://script.starpass.fr/check_php.php?ident=$ident&codes=$codes&DATAS=$datas");
       //Si on contact le serveur
       if($get_f)
       {
           $tab = explode("|",$get_f[0]);

           // dans $pays on a le pays de l'offre. exemple "fr"
           $pays = $tab[2];
           // dans $palier on a le palier de l'offre. exemple "Plus A"
           $palier = urldecode($tab[3]);
           // dans $id_palier on a l'identifiant de l'offre
           $id_palier = urldecode($tab[4]);
           // dans $type on a le type de l'offre. exemple "sms", "audiotel, "cb", etc.
           $type = urldecode($tab[5]);
           // vous pouvez à tout moment consulter la liste des paliers à l'adresse : http://script.starpass.fr/palier.php

           //Si $tab[0] répond "OUI" 
           if(substr($tab[0],0,3) == "OUI")
           {
                  $payement=true;

           }
           else
           {
               $tpl->assign('valid_pay', 'nok');
           }
       }
       else
       {
           $tpl->assign('valid_pay', 'error');
       }
   }

   /**
    *Si on ne recoi pas de payement
    **/
   else
   {
       $tpl->assign('valid_pay', '0');
   }
}

/**
*Sinon on désactive
**/
else
{
   //Action en début du fichier payement.tpl
}

/**
*On teste si le payement est OK
*Si oui, on crédite le compte
**/
if($payement)
{
$sql = bdd('account')->query("UPDATE account SET cash = cash+".$CONFIG_is['nb_cash']." WHERE id = $id_membre");

   $tpl->assign('valid_pay', 'ok');
}




$tpl->parse('account/payement.tpl');
?>

  • J'adore 1
Link to comment
Share on other sites

  • 0
  • Retraité

Bonsoir,

 

Le sujet contient la balise [glow=#800000][Résolu][/glow] ou reste sans réponse, de ce fait il a été déplacé dans la section "Résolu ou sans réponse".

 

Cordialement.

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
 Share



Important Information

Terms of Use / Privacy Policy / Guidelines / We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.