Bonjour,
J'ai une application tierce en php dans un iframe de mon application joomla!.
J'ai créé un plugin pour transmettre les données de connexion à l'appli php via les cookies. C'est bon.
Maintenant je voudrais effacer mes cookies lors de la déconnexion. Je ne sais pas quels paramètres transmettre à la fonction onUserLogout.
Voici mon script:
J'ai essayé ceci
ce qui me donne l'erreur suivante:
J'ai une application tierce en php dans un iframe de mon application joomla!.
J'ai créé un plugin pour transmettre les données de connexion à l'appli php via les cookies. C'est bon.
Maintenant je voudrais effacer mes cookies lors de la déconnexion. Je ne sais pas quels paramètres transmettre à la fonction onUserLogout.
Voici mon script:
Code PHP:
<?php
define('MY_SUPER', 8); // Super utilisateur
define('MY_EDIT', 11); // Editeur fichier
define('MY_LECT', 10); // Responsable (lecture sauf notes)
define('MY_ENRG', 2); // Enregistré (lecture simplifiée) - nouveau 29/03/2016
defined('_JEXEC') or die;
class plgSystemMyAppliLogin extends JPlugin
{
function onAfterInitialise() {
$user = JFactory::getUser();
if(!$user->guest){ // si l'utilisateur est loggé (pas un invité)
$user = JFactory::getUser();
setcookie('MyAppliLoginUserId', $user->id, time() + 3600);
setcookie('MyAppliLoginUserName', $user->name, time() + 3600);
setcookie('MyAppliLoginUserUserName', $user->username, time() + 3600);
setcookie('MyAppliLoginUserEmail', $user->email, time() + 3600);
//setcookie('test', serialize($user->getAuthorisedGroups()), time() + 600);
// Niveau d'autorisation z_fic
if (in_array(MY_SUPER, $user->getAuthorisedGroups())) setcookie('MyAppliLoginUserAccess', 4, time() + 3600); // Super utilisateur ou webmestre
elseif (in_array(MY_EDIT, $user->getAuthorisedGroups())) setcookie('MyAppliLoginUserAccess', 3, time() + 3600); // Ecriture fichier
elseif (in_array(MY_LECT, $user->getAuthorisedGroups())) setcookie('MyAppliLoginUserAccess', 2, time() + 3600); // Lecture fichier sauf notes
elseif (in_array(MY_ENRG, $user->getAuthorisedGroups())) setcookie('MyAppliLoginUserAccess', 1, time() + 3600); // Lecture simplifiée (annuaire)
}
}
function onUserLogout() {
// Désactivation des cookies lors de la connexion
}
}
Code PHP:
// Désactivation des cookies lors de la déconnexion
function onUserLogout($_COOKIE['MyAppliLoginUserId']) {
setcookie('MyAppliLoginUserId', '', -1);
setcookie('MyAppliLoginUserName', '', -1);
setcookie('MyAppliLoginUserUserName', '', -1);
setcookie('MyAppliLoginUserEmail', '', -1);
}
Code:
Fatal error: Cannot re-assign auto-global variable _COOKIE in C:\wamp\www\j002\plugins\system\myapplilogin\myapplilogin.php on line 44