$user =& JFactory::getUser(); ne marche pas sur IE9

Réduire
X
  • Filtrer
  • Heure
  • Afficher
Tout effacer
nouveaux messages

  • [RÉGLÉ] $user =& JFactory::getUser(); ne marche pas sur IE9

    Bonjour,

    J'ai un gros problème que je dois résoudre rapidement, normalement je résous toujours mes problèmes de moi même ou en cherchant sur Google.

    Voici le problème à 1 Million de Dollar : Je récupère l'user id d'une personne enregistré dans un "sous site" qui se trouve dans un sous dossier de l'installation de joomla 1.5 .

    Code PHP:
    <?php
    // On définie que c'est un fichier familier à Joomla
    define('_JEXEC');

    define('JPATH_BASE''/var/www/vhosts/*******/httpdocs' );

    define'DS','/' );

    // On inclue les constantes
    include ( JPATH_BASE.DS.'includes'.DS.'defines.php' );
    // On inclue le framework
    include ( JPATH_BASE.DS.'includes'.DS.'framework.php' );

    // On inclue la fameuse class JFactory
    include(JPATH_BASE.DS.'libraries/joomla/factory.php');

    $mainframe =& JFactory::getApplication('site');
    $mainframe->initialise();
    $user =& JFactory::getUser();
    $user_id $user->get('id');

    ?>
    Ce code récupère bien l'user id dans Google chrome, Firefox, Internet explorer 8 , mais pas dans INTERNET EXPLORER 9 ...

    Pour plus d'info cela me retourne 0 comme user_id et le bon user id sur Google Chrome, Firefox, Internet Explorer 8 ...
    Quelqu'un aurait un début de solution à me proposer svp ! Merci
    Dernière édition par blump à 26/01/2012, 09h59

  • #2
    Re : $user =&amp; JFactory::getUser(); ne marche pas sur IE9

    Bonjour,

    $user =& JFactory::getUser();
    if (!$user->guest) {
    $user_id = $user->get('id');
    }

    résout-il le problème ?
    Dernière édition par adieu22 à 26/01/2012, 10h12

    Commentaire


    • #3
      Re : $user =&amp; JFactory::getUser(); ne marche pas sur IE9

      Salut,

      J'ai testé et c'est le même problème, le problème ne se situe pas à ce niveau je penses, car mon code ou ton code fonctionne pour google chrome firefox et internet explorer 8 et 7 mais pas le 9 ... J'ai essayé avec $session = & JFactory::getSession(); et le problème est le même, il me sort la bonne session_id sur google chrome, firefox, internet explorer 8, mais sur le IE9 il me sort une session d'un guest et non de la personne connectée sur le site joomla.

      Pourquoi IE9 n'arrive t-il pas à récupérer l'user id ou la session id ?
      Dernière édition par blump à 26/01/2012, 13h21

      Commentaire


      • #4
        Re : $user =&amp; JFactory::getUser(); ne marche pas sur IE9

        Personne n'a une moindre piste ?!? Internet Explorer 9 met les sessions en "standby" si on switch sur un autre onglet ? des choses comme cela non ?

        Commentaire


        • #5
          Re : $user =&amp; JFactory::getUser(); ne marche pas sur IE9

          Bonjour

          Je me demande pourquoi l'immonde explorateur te joue un tel tour... cela m'interpelle car, à ce niveau-là, je n'ai jamais rencontré le moindre soucis.

          Tu accèdes à ta page de manière directe style www.tonsite.fr/domaine/get_url.php et donc, en dehors du framework de Joomla ==> je ne pourrais que supposer à ce stade que tu as oublié de charger/initialiser correctement Joomla. Mais cela fonctionne sous les autres navigateurs dis-tu. Bizarre.
          Christophe (cavo789)
          Développeur d'aeSecure; protection, optimisation et nettoyage (après hack) de sites web Apache https://www.aesecure.com/fr
          Développeur de marknotes, logiciel de gestion de prises de notes avec interface web et de multiples convertisseur https://github.com/cavo789/marknotes
          Mes logiciels OpenSource : https://www.avonture.be

          Commentaire


          • #6
            Re : $user =&amp; JFactory::getUser(); ne marche pas sur IE9

            Exactement je navigue en dehors du Framework, j'importe les classes nécessaires. Le site tourne avec 600 abonnés sous joomla et plus de 2000 visites uniques par jour . Le problème c'est que ce contenu (qui tourne en dehors du Framework ) est réservé aux abonnés et j'ai 20 % des abonnés qui tourne sur IE 9.0 . Et Pour eux pour le moment ce n'est pas possible d'accéder à ce sous contenu. Vous allez me dire pourquoi je ne crée pas un composant joomla (MVC). Tout simplement parce que le template que j'utilise pour mon site joomla n'est pas approprié et c'est un propre template que j'ai développé qui correspond aux critères de ce "sous site" . Je ne rentre pas plus dans les détails de forme, Il me suffisait seulement l'id de l'utilisateur joomla , cela fonctionne pour tous ceux qui ont internet explorer 9.0 et j'ai également testé sur 9.0 est effectivement , la fonction $user_id = $user->get('id'); retourne 0 et la même avec les sessions ($session = & JFactory::getSession() retourne bien une session mais cette session est relié à un guest dans la page de donnée et donc au lieu de récupérer la session lors de sa connexion sur le site , la fonction lui fourni une session Guest ...

            Ce n'est a n'y rien comprendre , IE 9.0 désactiverailes sessions ? et les réactiveraient lorsque l'on Reswitch sur l'onglet ou lorsque l'on ré-ouvre la page ?
            Dernière édition par blump à 26/01/2012, 21h06

            Commentaire


            • #7
              Re : $user =&amp; JFactory::getUser(); ne marche pas sur IE9

              Je n'ai toujours pas trouvé l'origine de ce problème je me suis penché également sur la différence de fonctionnement de internet explorer 9 et internet explorer 8 mais rien trouvé de concluant.

              Quelqu'un utilise-t-il la fonction
              $mainframe =& JFactory::getApplication('site');
              $mainframe->initialise();
              $user =& JFactory::getUser();
              en dehors du code de joomla ? Pour voir sil il a le même problème que moi sur IE9

              Commentaire


              • #8
                Re : $user =&amp; JFactory::getUser(); ne marche pas sur IE9

                J'ai testé sur un autre site joomla est le le test est concluant il récupère bien l'user id avec IE9, mais sur le site production il récupère sur tous les navigateurs sauf sur internet explorer 9.0 , c'est à devenir fou

                Commentaire


                • #9
                  Re : $user =&amp; JFactory::getUser(); ne marche pas sur IE9

                  [Mode Désolé]Cela ne va pas t'aider, désolé, mais juste pour dire que je déteste IE et que voilà encore une preuve que cette ignominie d'exploreur (IE quoi) est vraiment une crasse. En tant que développeur, j'ai déjà passé des dizaines d'heures à tenter de faire comprendre à IE que 1+1 cela fait 2. Des fois, je suis courageux; des fois, zut et zut, tant pis. J'ai même écris un plugin système "Bye bye IE" qui est actif sur un de mes sites et qui invite le visiteur à télécharger un vrai navigateur.[/Mode]
                  Christophe (cavo789)
                  Développeur d'aeSecure; protection, optimisation et nettoyage (après hack) de sites web Apache https://www.aesecure.com/fr
                  Développeur de marknotes, logiciel de gestion de prises de notes avec interface web et de multiples convertisseur https://github.com/cavo789/marknotes
                  Mes logiciels OpenSource : https://www.avonture.be

                  Commentaire


                  • #10
                    Re : $user =&amp; JFactory::getUser(); ne marche pas sur IE9

                    Problème Résolu j'ai l'impression, me demandé pas pourquoi , car avec internet explorer le système de connexion déconnait également. J'ai retravailler sur ACP , sur memcached et tout ce que j'utilise pour optimiser le site et depuis cela fonctionne ...

                    Commentaire

                    Annonce

                    Réduire
                    1 sur 2 < >

                    C'est [Réglé] et on n'en parle plus ?

                    A quoi ça sert ?
                    La mention [Réglé] permet aux visiteurs d'identifier rapidement les messages qui ont trouvé une solution.

                    Merci donc d'utiliser cette fonctionnalité afin de faciliter la navigation et la recherche d'informations de tous sur le forum.

                    Si vous deviez oublier de porter cette mention, nous nous permettrons de le faire à votre place... mais seulement une fois
                    Comment ajouter la mention [Réglé] à votre discussion ?
                    1 - Aller sur votre discussion et éditer votre premier message :


                    2 - Cliquer sur la liste déroulante Préfixe.

                    3 - Choisir le préfixe [Réglé].


                    4 - Et voilà… votre discussion est désormais identifiée comme réglée.

                    2 sur 2 < >

                    Assistance au forum - Outil de publication d'infos de votre site

                    Compatibilité: PHP 4.1,PHP4, 5, 6DEV MySQL 3.2 - 5.5 MySQLi from 4.1 ( @ >=PHP 4.4.9)

                    Support Version de Joomla! : | J!3.0 | J!2.5.xx | J!1.7.xx | J!1.6.xx | J1.5.xx | J!1.0.xx |

                    Version française (FR) D'autres versions sont disponibles depuis la version originale de FPA

                    UTILISER À VOS PROPRES RISQUES :
                    L'exactitude et l'exhaustivité de ce script ainsi que la documentation ne sont pas garanties et aucune responsabilité ne sera acceptée pour tout dommage, questions ou confusion provoquée par l'utilisation de ce script.

                    Problèmes connus :
                    FPA n'est actuellement pas compatible avec des sites Joomla qui ont eu leur fichier configuration.php déplacé en dehors du répertoire public_html.

                    Installation :

                    1. Téléchargez l'archive souhaitée : http://afuj.github.io/FPA/

                    Archive zip : https://github.com/AFUJ/FPA/zipball/master

                    2. Décompressez le fichier de package téléchargé sur votre propre ordinateur (à l'aide de WinZip ou d'un outil de décompression natif).

                    3. Lisez le fichier LISEZMOI inclus pour toutes les notes de versions spécifiques.

                    4. LIRE le fichier de documentation inclus pour obtenir des instructions d'utilisation détaillées.

                    5. Téléchargez le script fpa-fr.php à la racine de votre site Joomla!. C'est l'endroit que vous avez installé Joomla et ce n'est pas la racine principale de votre serveur. Voir les exemples ci-dessous.

                    6. Exécutez le script via votre navigateur en tapant: http:// www. votresite .com/ fpa-fr.php
                    et remplacer www. votresite .com par votre nom de domaine


                    Exemples:
                    Joomla! est installé dans votre répertoire web et vous avez installé la version française du fichier FPA:
                    Télécharger le script fpa-fr.php dans: /public_html/
                    Pour executer le script: http://www..com/fpa-fr.php

                    Joomla! est installé dans un sous-répertoire nommé "cms" et vous avez installé la version française du fichier FPA:
                    Télécharger le script fpa-fr.php dans: /public_html/cms/
                    Pour executer le script: http://www..com/cms/fpa-fr.php

                    En raison de la nature très sensible de l'information affichée par le script FPA, il doit être retiré immédiatement du serveur après son utilisation.

                    Pour supprimer le script de votre site, utilisez le lien de script de suppression fourni en haut de la page du script. Si le lien de suppression échoue pour supprimer le script, utilisez votre programme FTP pour le supprimer manuellement ou changer le nom une fois que le script a généré les données du site et le message publié sur le forum. Si le script est toujours présent sur le site, il peut être utilisé pour recueillir suffisamment d'informations pour pirater votre site. Le retrait du script empêche des étrangers de l'utiliser pour jeter un oeil à la façon dont votre site est structuré et de détecter les défauts qui peuvent être utilisé à vos dépends.
                    Voir plus
                    Voir moins
                    Travaille ...
                    X