Bug pour générer un fichier Sitemap

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

  • #16
    Envoyé par lendrevi Voir le message
    @ manu93fr,

    Que de bavardage pour ne rien dire. Peut-être que l'on peut passer au fond de mon problème puisque tu dis m'aider.
    Ai-je bien répondu à tes questions ? Cela me semble plus important.
    j'ai dejà fait ma ptite contribution mais encore faut il être un peu patient .... et coté "bavardage pour ne rien dire", tu as raison, j'arrête de ce pas ce "bavardage" inutile et stérile avec toi .... j'ai déjà mal à la tête

    ps: tu as vu ... j'ai mis un smiley ... donc pas agressif ...
    Cette année, le JoomlaDay FR aura lieu à Bruxelles les 15 et 16 mai 2020. Évènement à ne pas rater. Plus d'infos sur https://www.joomladay.fr

    Ce forum, vous l'aimez ? il vous a sauvé la vie ? Vous y apprenez chaque jour ? Alors adhérez à l'AFUJ https://www.joomla.fr/association/adherer

    Commentaire


    • #17
      @ manu93fr,

      Je t'ai fait remarquer que nos 2 posts se sont croisés et que cette réponse de ma part " ... que de bavardage pour ne rien dire ..." a été écrite avant de recevoir tes derniers conseils. Merci donc de bien vouloir en tenir compte.
      Mais c'est très bien ainsi, tu as raison et ne perds pas de temps à intervenir ainsi dans mes demandes d'aide.
      Ceci ne fait que confirmer ce que je pense de toi : tu as un fichu caractère. Tes interventions semblent signées d'un garde chiourme au fond d'une prison, et non d'un modérateur de l'open source !

      Commentaire


      • #18
        Voici ce qu'un spécialiste du langage php m'a conseillé d'écrire en lieu et place de mon instruction bloquante :

        Code PHP:
          $site = SITE;  $xml = <<<xml  <?xml version="1.0" encoding="utf-8"?>  <sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">  <sitemap>  <loc>{$site}/sitemaps/sitemap.xml</loc>  </sitemap>  xml;  file_put_contents('sitemaps/sitemap-index.xml', $xml);
        Après un nouveau test, cette écriture me donne l'erreur :

        --> 0 - syntax error, unexpected '<<' (T_SL)

        D'après ce spécialiste, la version de php fournie par mon hébergeur O2switch -cf. 7.2.25- n'autoriserait pas l'utilisation de la notation herecode (celle qui permet l'écriture de "<<<xml").
        Je viens donc de soumettre cette remarque à mon hébergeur, et j'attends sa réponse.

        Commentaire


        • #19
          Bonjour,

          Pourquoi tant d'agressivité. Manu ne l'a jamais été.

          Quand j'ai un problème de ce type, je simplifie ou j'éclate mon code pour isoler le problème.
          J'ai un doute sur la forme d'une chaîne, je la remplace par une autre forme.
          Je doute que mon serveur accepte les chaines heredoc (et non herecode ), je la remplace pour tester

          Devant ce genre de souci, un développeur est seul devant son code dans son environnement
          UP, le plugin universel à découvrir sur https//up.lomart.fr
          bgMax
          , AdminOrder, MetaData, Zoom, ArtPlug, Custom, Memo, Filter, ... sur http://lomart.fr/extensions

          Commentaire


          • #20
            Bonjour

            lendrevi merci de veiller à respecter tes interlocuteurs. Je ne vois aucune agressivité dans les messages de Manu. La seule personne qui a fait montre de sentiments peu collégial, c'est toi.

            Si tu veux recevoir de l'aide, le respect de l'autre est déjà un bon point de départ.

            Pour ton problème, je rejoins Loïc : à un moment donné, on simplifie son code. Es-tu certain de la ligne qui provoque l'erreur ? (tu n'as pas dis plus haut avoir mis la ligne en commentaire pour confirmer que cela fonctionne).

            Heredoc ? Pourquoi ? Tu fais juste une concaténation d'une chaîne de caractères et d'une variable. C'est une des choses les plus simples en programmation à faire; nul besoin de compliquer la chose en utilisant des heredoc.

            Commente et simplifie et tu trouveras assez vite où était l'erreur.

            Bonne journée.
            Christophe (cavo789)
            Logiciel gratuit de scan antivirus : https://github.com/cavo789/aesecure_quickscan (plus de 45.000 virus détectés, 700.000 fichiers sur liste blanche)
            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

            Cette année, le JoomlaDay FR aura lieu à Bruxelles les 15 et 16 mai 2020, vous je ne sais pas mais moi, une licorne peut venir à la maison, je n'y serais pas. Non peut-être ! Évènement à ne pas rater. Plus d'infos sur https://www.joomladay.fr

            Commentaire


            • #21
              Envoyé par lomart Voir le message
              Bonjour,

              Pourquoi tant d'agressivité. Manu ne l'a jamais été.

              Quand j'ai un problème de ce type, je simplifie ou j'éclate mon code pour isoler le problème.
              J'ai un doute sur la forme d'une chaîne, je la remplace par une autre forme.
              Je doute que mon serveur accepte les chaines heredoc (et non herecode ), je la remplace pour tester

              Devant ce genre de souci, un développeur est seul devant son code dans son environnement
              Bonjour, et merci pour votre contribution,

              Je ne pense pas être agressif, mais peut-être un peu susceptible ! Je n'aime pas être pris pour un idiot, voire même un maladroit. Je pense être appliqué et réfléchi, tout au moins je m'y efforce.
              Il n'est pas interdit à quiconque d'être respectueux d'autrui. Bien au contraire.
              Quand je réponds à des demandes sur ce forum, je m'interdis tout jugement de valeur sur le demandeur. Simple politesse.

              Je partage tout à fait vos conseils de développeur. Et j'en applique tout autant. Croyez-moi, depuis que je suis tombé sur cette erreur, je n'ai de cesse de tenter d'autres écritures, d'éclater mon code, etc...
              Quant à cette réflexion sur la "notion heredoc", elle n'émane pas de moi (j'en ignorais l'existence) mais d'un spécialiste php. Je l'ai rapporté tel quel ici (merci pour le correctif "heredoc" et non "herecode" comme il me l'avait écrit). Je n'ai jamais utilisé de telles écritures.

              Commentaire


              • #22
                Envoyé par cavo789 Voir le message
                Bonjour

                lendrevi merci de veiller à respecter tes interlocuteurs. Je ne vois aucune agressivité dans les messages de Manu. La seule personne qui a fait montre de sentiments peu collégial, c'est toi.

                Si tu veux recevoir de l'aide, le respect de l'autre est déjà un bon point de départ.

                Pour ton problème, je rejoins Loïc : à un moment donné, on simplifie son code. Es-tu certain de la ligne qui provoque l'erreur ? (tu n'as pas dis plus haut avoir mis la ligne en commentaire pour confirmer que cela fonctionne).

                Heredoc ? Pourquoi ? Tu fais juste une concaténation d'une chaîne de caractères et d'une variable. C'est une des choses les plus simples en programmation à faire; nul besoin de compliquer la chose en utilisant des heredoc.

                Commente et simplifie et tu trouveras assez vite où était l'erreur.

                Bonne journée.
                Bonjour,

                Dans mon post #9 de cette discussion, j'ai bien précisé au n°5 de mes réponses que j'avais pratiqué une documentation de toutes mes ignes puis relâché progressivement pour comprendre quelle instruction de mon script générait l'erreur.
                Et j'ai montré cette instruction (tentative d'écriture d'une ligne dans le sitemap.xml).
                ps: je ne suis jamais irrespectueux sur ce forum. Je t'invite à vérifier les nombreux posts et les aides que l'ai pu apporter moi-même sur ce forum

                Commentaire


                • #23
                  <BIG TROLL - START>

                  Envoyé par manu93fr Voir le message
                  Bonsoir,
                  qui dit php ... suppose écrire un script avec les bonnes instructions suivant la version de php du serveur

                  Questions :
                  - quelle est la version exacte de php sur ton serveur ?
                  - tu as écris toi même ce script ou tu l'as "récuperée" quelque part ?
                  - si tu es sur un site Joomla, pourquoi utiliser un tel script ? tu as des extensions pour cela ... sauf si tu as une raison précise que je ne connais pas
                  - peut on avoir l'intégralité du code ? (pour trouver une éventuelle erreur)

                  si personne ne peut t'aider ...... il faudrait peut être t'orienter sur un forum dédié a PHP
                  lendrevi
                  Je ne vois nulle part, dans l'intervention de Manu, la moindre agressivité, ni dans le fond, ni dans la forme (y a même un smiley )

                  Apparemment ce bug dans ton code t'énerve (je peux comprendre) au point de prêter de fausses intentions aux intervenants (ça je comprends moins).

                  Il ne faut pas oublier que les messages qu'on lit se teintent toujours de l'état d'esprit dans lequel on se trouve, d'où parfois une mauvaise interprétation des intentions.

                  Donc en cette période de fêtes, je ne saurai trop te conseiller de manger un peu (beaucoup) de chocolat, c'est bon pour l'humeur comme pour le cerveau

                  </BIG TROLL - END>
                  Je préfère éclairer que briller.” - “J'ai peut-être l'air froid, mais je suis pas givré.
                  Ne m'envoyez pas de message privé pour résoudre vos problèmes sans y avoir été invité.
                  Dolmenhir : tailleur de site web depuis 1997. Spécialiste Joomla depuis 2005. https://www.dolmenhir.fr

                  Commentaire


                  • #24
                    Hello lendrevi

                    A part le fait que tu n'utilises pas les fonctions standard offertes par Joomla pour les query en base je ne vois rien d'anormal et mon PHPStorm non plus.

                    Comme je n'ai pas de réponse à ta question, j'ai une alternative : JSitemapPro. tu peux générer le sitemap pour les URL que tu souhaites (comme j'en ai qqes milliers je fais çà par requete SQL). Cà marche c'est fonctionnel et la version pro te permet de suivre bien d'autres choses.

                    Manu

                    Commentaire


                    • #25
                      Envoyé par elecoest Voir le message
                      Hello lendrevi

                      A part le fait que tu n'utilises pas les fonctions standard offertes par Joomla pour les query en base je ne vois rien d'anormal et mon PHPStorm non plus.

                      Comme je n'ai pas de réponse à ta question, j'ai une alternative : JSitemapPro. tu peux générer le sitemap pour les URL que tu souhaites (comme j'en ai qqes milliers je fais çà par requete SQL). Cà marche c'est fonctionnel et la version pro te permet de suivre bien d'autres choses.

                      Manu
                      Bonjour,
                      Je te remercie pour ce conseil concernant JSitemapPro.
                      Je viens justement de résoudre mon problème en travaillant en 2 étapes :
                      1. j'ai simplifié mon script pour qu'il ne génère pas la 1ère ligne de tout sitemap,
                      2. après exécution du scipt, il me reste ensuite à ajouter avec un éditeur de texte la 1ère ligne manquante dans chacun des sitemaps.
                      nb : idem pour le sitemap.index
                      Après vérification, mes quelques 500000 urls sont ok.

                      ps: je suis surpris par ta remarque selon laquelle je n'utilise pas les fonctions standard offertes par Joomla pour les query en base : j'utilise ici "mysqli" qui est un standard au-delà de Joomla. Et sans problème. Et avec l'avantage de pouvoir faire tout contrôle de bonne écriture par des tests préalables avec "phpMyadmin sur ma bdd (avec un simple copier/coller de ma requête mysqli).
                      Mais je suis conscient qu'il existe bien d'autres méthodes, et notamment des méthodes propres à Joomla.

                      Bons vœux pour 2020 !

                      Commentaire


                      • #26
                        juste qu'au lieu d'écrire

                        $conn = mysqli_connect('... mes données personnelles de connexion à la BDD...');
                        $req = "SELECT nom, prenom, profession, specialite, code_profession, b5, mode_exercice, cp_ville, a3 FROM table WHERE ((cp_ville > ' ') AND (a3 = 'C') AND !((code_profession = '60') AND (b5 = 'S')) OR (code_profession = '86') OR (code_profession = '50') OR (code_profession = '21') OR (code_profession = '28') OR (code_profession = '98'))";


                        j'aurais fait :


                        $db = JFactory::getDbo(); $query = $db->getQuery(true); $req = "SELECT nom, prenom, profession, specialite, code_profession, b5, mode_exercice, cp_ville, a3 FROM table WHERE ((cp_ville > ' ') AND (a3 = 'C') AND !((code_profession = '60') AND (b5 = 'S')) OR (code_profession = '86') OR (code_profession = '50') OR (code_profession = '21') OR (code_profession = '28') OR (code_profession = '98'))"; $db->setQuery($req);
                        $results = $db->loadObjectList(); ...

                        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

                        Partenaire de l'association

                        Réduire

                        Hébergeur Web PlanetHoster
                        Travaille ...
                        X