IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

inserer des delays de requete dans un module existant


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 2
    Par défaut inserer des delays de requete dans un module existant
    Bonjour,

    [3615 my-life]
    Tout d'abord je vous présente toutes mes excuses pour me pointer ici en y connaissant vraiment rien... mais alors rien du tout
    Si le titre de mon sujet n'est pas approprié, n'hésitez pas à m'en suggérer un plus clair également une fois que vous aurez compris ce que je cherche à faire.
    Si (encore) je n'ai pas posté au bon endroit, je présente mes excuses au modérateur qui devra deplacer mon post

    Vif du sujet :
    Je cherche à utiliser un module très bien développé mais qui dans mon cas ne fonctionne pas puisque utilisé d'une façon parallèle à ce pour quoi il a été prévu:
    wowhead-tooltips -Version-4.3.1
    [/3615 my-life]

    Wowhead-tooltip intègre plusieurs modules interne. Je n'ai aucun soucis avec ceux interrogeant le site wowhead.com, en revanche celui qui interroge l'armurerie de wow europe m'en donne deux majeurs.

    1 - Le premier, le plus gênant est le fait qu'il n'intègre aucun système de delay entre ses requêtes. De fait, si on utilise trop de liens sur une même page, les requêtes sont toutes lancé simultanément et le site se retrouve "banni" pour approximativement 12 heures.

    Sachant qu'il m'a fallut prêt d'une journée pour comprendre que dans wowhead.php il fallait remplacer le "de" par "fr" pour résoudre le soucis de lang que j'avais, j'en appel à votre aide pour ce soucis de "ban" répétitif... je doute avoir une chance si je suis entièrement livré à moi même (surtout en étant limité à un test toute les 12 heures).

    D'après ce que j'ai trouvé, il existerait un truc appelé "Cron" qui permettrait d'échelonner les requêtes à un rythme prédéfinie, comme par exemple 1 toute les 3 secondes, avec un systèmes de "file d'attente". Je ne sais pas si c'est applicable dans ce cas de figure. A vrai dire, je n'ai même pas été capable d'identifier la partie du code qui fait la requête. Je pense cependant que c'est dans /external/armory.php et que le traitement du résultat serait dans /includes/wowhead_armory.php

    Je me doute que ce n'est pas une demande formulé très clairement, mais n'étant pas du tout dev moi même, j'avoue ne pas trop avoir idée de comment la formuler...
    De fait, n'hésitez pas, si vous trouvez un peu de temps pour m'aider, à me demander toute information complémentaire, ou à faire certaine recherches par moi même si c'est à ma portée et que ça peut vous faire gagner du temps.

    2 - le second point me posant un soucis est, je pense, plus standard et devrait pouvoir se résoudre avec un simple lien vers un tuto si une telle chose existe
    J'essais d'obtenir la certification W3C html 1.0 strict, et ma foi, je m'en suis pas trop mal sortie pour l'instant. Les liens vers l'armurerie que fournit le module ci dessus (encore lui) ne respecte pas la norme W3C, c'est en fait pas tellement le module, mais l'url en elle même qui intègre &cn pour tout les liens vers une fiche de l'armurerie. Il me semble avoir lut quelque part qu'on pouvait "cacher" une url derrière un fichier.js qui scripterait le lien.
    Je ne suis pas certains (encore une fois) que ce soit la solution, mais c'est ma seule piste

    Je m'en remet à vous, en espérant que mon post n'aura fait hurler personne et que certains trouveront un moment pour m'aider ou au moins pour me pointer du doigt la bonne direction vu que je suis complètement paumé.

    Merci à ceux qui auront pris le temps de lire ce post, et un plus grand merci encore à ceux qui perdront un peu de leurs temps pour me venir en aide.

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Je ne comprends pas très bien, tu es banni de quoi ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Nouveau candidat au Club
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 2
    Par défaut
    Bonjour et merci de ta réponse (question)

    Le site (pas mon pc qui navigue sur le site) se retrouve banni de l'armurerie en ligne (fourni par le dev du jeu) que le module interroge.
    En fait, j'ai un peu mieux compris le problème.
    Le module permet d'afficher des tooltip en mousover. Pour ça, le module fait ces requêtes à l'armurerie, et complète le tooltip avec plein d'informations utile. Mais ce ne sont pas ces requêtes qui provoquent le bannissement de l'armurerie, puisqu'elle ne sont faite que lors du "mousover" uniquement et son gardé en cache et interrogé à sur le cache pendant une durée prédéfini (pour le moment 48 heures ce qui est un peu trop pour une info à jour).
    En fait le soucis se passe sur l'affichage du lien par lui même, je m'explique (au mieux) :
    Le module s'installe sur le site, et pour s'en servir on utilise des BBCode sur le site phpBB. Ce bbcode se présente tel que : [armory loc="region","serveur"]nom-du-perso[armory].
    Ce bbcode provoque donc l'affichage sur la page d'un lien qui permettra de passer en mouseover dessus et d'avoir un tooltip utile, mais c'est l'affichage du lien en lui même qui "requête" sans mise en cache des informations. Ce qu'il va chercher est uniquement la "classe" (par exmple mage, guerrier, chasseur etc etc..) et la "race" (humain, gnome, elfe etc etc..).
    Ces 2 requêtes (+ les 2 gifs qui vont avec) ne se mettent pas en cache, ce qui est bien dommage car ce ne sont pas des informations amenés à changer souvent, (en fait, la classe ne peux pas changer, sauf en supprimant le perso et le recréant sur le jeu, et la race est changeable mais payante, donc cas possible mais pas rare)
    Ce qui provoque le bannissement de l'armurerie, c'est lorsque sur une page, il y a plusieurs de ces bbcode qui affichent chacun un perso... Chaque bbcode lance immédiatement et simultanément 2 requêtes... Sachant que mon but est d'afficher chaque perso et reroll (perso secondaire) de chaque membres dans les profiles sous l'avatar on arrive vite sur une page de 10 posts à une trentaine de liens, ce qui provoque un bannissement de l'armurerie pour une durée de 12 heures (un peu normal d'ailleurs) .

    En fait après un peu de recherche Cron ne résoudra probablement pas mon problème, en revanche, un cache soit via répertoire sur le site, soit via sql, des informations "classe" et "race" avec une durée de cache (genre 72 heures pour la forme) serait la solution parfaite.
    Du coup les requêtes ne se feraient que lors du mouseover, pour lequel je pourrais définir un cache de 6 ou 8 heures pour avoir un tooltip un peu plus à jour (je peux déjà paramétrer ça). Pour être ban après ça, il faudrait que tout mes membres fassent simultanément un mouseover sur des perso diffèrent... chose plus qu'improbable

    Un site d'essais peut aider :
    http://beta.renaissance-lce.net/ucp.php?mode=login
    login : test1test
    pass : test1test

    Voilà, et merci encore d'y jeter un oeil, j'essaie de comprendre par moi même, mais entre comprendre vaguement ce que fait une ligne de code et être capable de la "réécrire", il y a un sacré fossé.

Discussions similaires

  1. [MySQL] inserer des données en arabe dans une base de données mysql
    Par curieuseInformatique dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 24/09/2011, 12h03
  2. [AC-2007] Mettre des valeurs de requete dans des TextBox
    Par tokagero dans le forum VBA Access
    Réponses: 5
    Dernier message: 17/06/2011, 15h18
  3. Réponses: 12
    Dernier message: 23/03/2009, 20h48
  4. placer requete dans le module du form
    Par @rkane dans le forum Access
    Réponses: 2
    Dernier message: 11/09/2006, 10h56
  5. pb:inserer des caractère en arabe dans une bd sql server
    Par l_faiza dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 24/12/2005, 15h02

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo