openid

Eléphanteau du PHP | 21 Messages

11 févr. 2010, 23:14

Bonsoir,

j'ai récupéré le code php d'openid pour le tester
et j'arrive a une erreur
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /var/www/essai_tech/openid/oid_return.php:2) in /var/www/essai_tech/openid/oid_return.php on line 8

Warning: Cannot modify header information - headers already sent by (output started at /var/www/essai_tech/openid/oid_return.php:2) in /var/www/essai_tech/openid/oid_return.php on line 26
voici le code source du fichier
<?php
// Fichiers inclus
require_once "Auth/OpenID/Consumer.php";
require_once "Auth/OpenID/FileStore.php";

// démarre la session (requsi pour YADIS)
session_start();

// crée une zone de stockage pour les données OpenID
$store = new Auth_OpenID_FileStore('./oid_store');

// crée un consommateur OpenID
// Lit la réponse du fournisseur OpenID
$consumer = new Auth_OpenID_Consumer($store);
$response = $consumer->complete('http://consumer.example.com/oid_return.php');

// renseigne les valeurs en fonction de celles de l'authentification
if ($response->status == Auth_OpenID_SUCCESS) {
  $_SESSION['OPENID_AUTH'] = true;
} else {
  $_SESSION['OPENID_AUTH'] = false;    
}

// redirige vers la zone restreinte
header('Location: restricted.php');  
?>
je ne comprend pas pourquoi cette erreur, le code, public, doit avoir été testé par beaucoup de monde

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

12 févr. 2010, 09:21

Modération :
Afin d'obtenir plus de réponses, le sujet a été déplacé dans un forum plus approprié.

Merci de prendre le temps de lire les règlements
ainsi que l'intitulé de chaque forum avant de poster un nouveau sujet.
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

Mammouth du PHP | 2937 Messages

12 févr. 2010, 10:52

Insère la fonction session_start () au tout début de ton fichier, avant les inclusions. Vérifie aussi que les deux fichiers inclus ne comportent pas de ligne vierge à la fin (autrement dit, pas de retour à la ligne après l'éventuelle balise de fermeture ?>).

Eléphanteau du PHP | 21 Messages

02 mars 2010, 14:33

ça marche merci beaucoup
maintenant j'ai un autre soucis

la variable $_SESSION['OPENID_AUTH'] n'est pas transmis de oid_return à restricted
la variable est vide