Bonjour à toi !
Et merci pour ce script
Je l'ai installé sur mon site récemment, cependant, lorsque je je rentre le code 'de test', j'arrive bien sur la page pour rentrer le pseudo.
Lorsque je rentre mon pseudo, cela me renvois vers une page d'erreur StarPass qui me dis que le code n'est pas bon, alors que celui ci est forcément bon étant donné que j'ai réussi à aller sur la page de sélection de joueur..
Peux -tu m'éclairer à ce sujet ? Merci à toi
<?php
// Déclaration des variables
$ident=$idp=$ids=$idd=$codes=$code1=$code2=$code3=$code4=$code5=$datas='';
$idp = ******;
// $ids n'est plus utilisé, mais il faut conserver la variable pour une question de compatibilité
$idd = id_de_votre_document;
$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);
/* Envoi 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 */
$get_f=@file("http://script.starpass.fr/check_php.php?ident=$ident&codes=$codes&DATAS=$datas");
if(!$get_f)
{
exit("Votre serveur n'a pas accès au serveur de Starpass, merci de contacter votre hébergeur.");
}
$tab = explode("|",$get_f[0]);
if(!$tab[1]) $url = "http://script.starpass.fr/erreur.php";
else $url = $tab[1];
// 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] ne répond pas "OUI" l'accès est refusé
// On redirige sur l'URL d'erreur
if(substr($tab[0],0,3) != "OUI")
{
header("Location: $url");
exit;
}
else
{
/* Le serveur a répondu "OUI"
On place un cookie appelé CODE_BON et qui vaut la valeur 1
Ce cookie est valide jusqu'à ce que l'internaute ferme son navigateur
Dans les pages suivantes, nous testerons l'existence du cookie
S'il existe, c'est que l'internaute est autorisé,
sinon on le renverra sur une page d'erreur */
setCookie("CODE_BON", "1", 0);
header("Location: formu.php"); /* Redirection vers le formulaire du pseudo pour éviter le refresh avec F5 */
// Si vous avez plusieurs documents, nommer le cookie plutôt 'code'+iDocumentId
// vous pouvez afficher les variables de cette façon :
// echo "idd : $idd / codes : $codes / datas : $datas / pays : $pays / palier : $palier / id_palier : $id_palier / type : $type";
}
?>
<?php
if(isset($_COOKIE['CODE_BON']))
{
if($_COOKIE['CODE_BON']!='1')
{
header( "Location: http://script.starpass.fr/erreur.php" );
exit(1);
}
}
else
{
header( "Location: http://script.starpass.fr/erreur.php" );
exit(1);
}
?>
<form method="post" action="ajout2.php">
Pseudo: <input type="text" name="pseudo" size="45" /> <br />
<input type="submit" value="Confirmer" />
</form>
<?php
if(isset($_COOKIE['CODE_BON']))
{
if($_COOKIE['CODE_BON'']!='1')
{
header( "Location: http://script.starpass.fr/erreur.php" );
exit(1);
}
}
else
{
header( "Location: http://script.starpass.fr/erreur.php" );
exit(1);
}
?>
<?php
if(!empty($_POST['pseudo']))
{
//erreures
error_reporting(E_ALL);
//Infos
include "config_bdd.php";
echo "<h1>Iconomy</h1>";
$player = $_POST['pseudo'];
$conn = mysql_connect ($dbhost, $dbuser, $dbpass);
mysql_select_db($dbname);
$result = mysql_query("SELECT * FROM nom_de_la_table_iconomy WHERE username='".$player."'");
$row = mysql_fetch_array($result);
if($_POST['pseudo'] == $row['username'])
{
echo 'Salut '. $row['username'] . ' ta balance est de' . $row['balance'] . 'on va y ajouter 500';
mysql_query("UPDATE nom_de_la_table_iconomy SET balance=balance+500 WHERE id=".$row[0]."");
[COLOR=#ff9900]setcookie("CODE_BON");[/COLOR] /* Suppression du cookie */
}
else
echo 'Le pseudo saisie n\'est pas inscrit sur le serveur !';
}
else
echo 'Vous devez remplir le champ !';
?>
<?php
// On vérifie si le cookie existe
if(isset($HTTP_COOKIE_VARS['CODE_BON']))
{
// Si le cookie existe mais que le contenu n'est pas bon on le redirige sur la page d'erreur
if( $HTTP_COOKIE_VARS['CODE_BON'] != '1'){
header( "Location: http://script.starpass.fr/erreur.php" );
exit(1);
}
}
else{
// Si le cookie n'existe pas on redirige l'internaute sur la page d'erreur
header( "Location: http://script.starpass.fr/erreur.php" );
exit(1);
}
?>
<?php
if(isset($_COOKIE['CODE_BON']))
{
if($_COOKIE['CODE_BON']!='1')
{
header( "Location: http://script.starpass.fr/erreur.php" );
exit(1);
}
}
else
{
header( "Location: http://script.starpass.fr/erreur.php" );
exit(1);
}
?>
hello , l'enroule ses que sa ses coté starpass :/ je n'ai rien modifié au code startpass soit vous avez mal paramétré votre script sur starpass soit je ne sais pas x)Bonjour,
Tout d'abord merci pour ce tuto très utile.
j'ai le meme probleme que emprexx, quand je rentre mon pseudo, cela me renvois vers une page d'erreur StarPass qui me dis que le code n'est pas bon.