Bonjour,
J'ai un petit problème. J'ai intégrer un système de micropaiement sur mon site.
La page d'accès fonctionne mais la page protégée renvoi toujours sur le fichier "errorcred.php" :
Page protégée :
<?php
session_start();
if(isset($_COOKIE'pseudo'])){
// Identifiants de votre document
$docId = ****** ;
$siteId = ****** ;
$uid = $_COOKIE'pseudo'];
$awards = 100;
// PHP5 avec register_long_arrays désactivé?
if (!isset($HTTP_GET_VARS)) {
$HTTP_SESSION_VARS = $_SESSION;
$HTTP_SERVER_VARS = $_SERVER;
$HTTP_GET_VARS = $_GET;
}
// Construction de la requête pour vérifier le code
$query = 'http://payment.rentabiliweb.com/checkcode.php?';
$query .= 'docId='.$docId;
$query .= '&siteId='.$siteId;
$query .= '&code='.$HTTP_GET_VARS'code'];
$query .= "&REMOTE_ADDR=".$HTTP_SERVER_VARS'REMOTE_ADDR'];
$result = @file($query);
if(trim($result[0]) !== "OK") {
header('Location: errorcred.php');
exit();
}
require "conf.php";
/* Mon traitement SQL */
header('Location: index.php?p=credit&rep=2');
}
else {
$_SESSION'flash']=array();
$_SESSION'flash']'type']="error";
$_SESSION'flash']'title']="Erreur !";
$_SESSION'flash']'content']='Vous devez être connecté pour acceder à cette page.';
header('Location: index.php?p=index');
}
?>
Merci d'avance pour votre aide.
Bonjour,
Es-ce que votre serveur permet d'utiliser la fonction file() ?
Sinon testé en curl
$url = 'http://payment.rentabiliweb.com/checkcode.php?';
$url .= 'docId='.$docId;
$url .= '&siteId='.$siteId;
$url .= '&code='.$_GET'code'];
$url .= "&REMOTE_ADDR=".$HTTP_SERVER_VARS'REMOTE_ADDR'];
$ch = curl_init();
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_USERAGENT, $_SERVER'HTTP_USER_AGENT']);
curl_setopt($ch, CURLOPT_REFERER, $_SERVER'HTTP_REFERER']);
curl_setopt($ch, CURLOPT_TIMEOUT, 10); // 10secondes de time out
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HTTPGET, 1);
$result = curl_exec($ch);
$result = trim($result);
$pos = strpos($result,'OK');
if ($pos === false) {
// code erreur
} else {
// acces à la page protégé
}
Votre code fonctionne. :D
En effet ça doit être un refus de la fonction file().
Merci Beaucoup :)