Aller au contenu

SStephane

Hubmaster
  • Compteur de contenus

    726
  • Inscrit(e) le

  • Dernière visite

Messages postés par SStephane

  1. Propre et net :


    function compute_string_for_url($str){
    $str = preg_replace('~[^\\pL\d]+~u', '-', $str);
    $str = trim($str, '-');
    $str = iconv('utf-8', 'us-ascii//TRANSLIT', $str);
    $str = strtolower($str);
    $str = preg_replace('~[^-\w]+~', '', $str);
    return $str;
    }

  2. Smarty ou un autre moteur de template, il met en cache les pages ou leur fragment, la requête n'est donc effectué qu'une fois (selon les paramètres).

    Après sans en savoir plus sur ton site, difficile à dire ;)

    (PS : vérifie quand même l'otpimisation de ta base de données, index etc. certaines requêtes peuvent être très longues si c'est mal optimisé lorsqu'un table a trop d'entrées)

  3. Euh... regarde plutôt du côté du pattern factory http://fr.wikipedia.org/wiki/Fabrique_%28patron_de_conception%29

    A vue de nez, tes pages (Article, Breve etc.) peuvent étendre une classe abstraite Page ou implémenter une interface IPage (voire même faire les 2 ou plus car on peut implémenter plusieurs interfaces en php comme dans la majorité des langages).

    Ta logique va dans le bon sens (puisque tu es dans la logique du pattern factory, largement utilisé), mais je dirai que le fait que tu te retrouves à écrire $this = new Article() ne sonne pas bon :)

    Par contre, tu peux faire : $this->Type = new Article et alors tu stockes ton nouvel objet article dans une propriété de ta classe Page

    Bof, dans un langage parlé, un article n'est ni plus ni moins qu'un type de page particulier, ce n'est pas réellement une propriété de page mais plus une sous-classe.

  4. Event.COMPLETE correspond en général à la fin du chargement d'un élément (dans ton cas, lorsque le MP3 est téléchargé), il te faut utiliser SoundChannel (il est renvoyé par la méthode play() de la classe Sound, sur laquelle les paramètres sont facultatifs) et c'est sur cet objet que tu vas écouter l'événement SOUND_COMPLETE :


    var _s:Sound = new Sound();
    var _ss:SoundChannel = _s.play();
    _ss.addEventListener(Event.SOUND_COMPLETE, SoundCompleteHandler);

    function SoundCompleteHandler(evt:Event):void
    {
    _s.play();
    }

    Ainsi tu auras ta boucle, bonne chance ;)

    (Attention à la portée des variables dans mon code, un c/c ne marchera sans dotue pas, je ne sais pas si tu es dans un contexte objet ou non, c'est simplement pour te montrer l'idée)

  5. Hello, ça semble s'apparenter à de la GED ce que tu souhaites faire... Alfresco ? mais c'est du java, pas du PHP. Après certains CMS proposent un système de notification à chaque changement dans un noeud. (c'est le cas d'eZ et sans doute d'autres, mais je m'en servirai probablement pas pour de la ged.

    ps : je suis un peu perplexe quand je vois utiliser wordpress à tout bout de champ pour des fonctions pour lesquelles il n'est pas prévu, le tout en faisant une confiance aveugle aux concepteurs de plugins qui ne sont absolument pas vérifiés, ou très peu, cela dit, bonne chance pour ton projet.

  6. Hello,

    J'appelle des animations flash en ajax dans certaines pages d'un site, ces animations sont exécutées partout sauf sur IE (il affiche le html <object ...></object> sans exécuter l'animation). Ma solution consiste pour le moment à supprimer l'élément flash puis la le reconstruire et à le lancer avec swfobject lorsque le navigateur est IE, je voulais savoir s'il n'y avait pas plus simple !

  7. Que tu sois en canvas ou iframe, tu es plus ou moins obligé d'utiliser xfbml dans la mesure ou tu souhaites utiliser les modules de facebook.

    Que ces modules soit exécutés côté client en js à l'intérieur des balises <fb:serverFbml> ou en mode canvas.

    Je comprends ton inquiétude sur la durée de vie du langage, mais que peux-tu y faire ? Je pense pas non plus qu'ils s'amusent à changer leurs recommandations de sitôt.

    Je te recommande de créer tes applis en iframe (afin d'éviter fbjs que je trouve personnellement chiant et indébogable), ainsi, tu peux te passer un maximum du framework FB.

    Lorsque tu n'as pas le choix (ou le temps), utilise leurs tags (style fb:friend-selector) avec un peu d'abstraction, en cas de modification, tu aviseras.

    A ta place, je flipperai pas trop non plus : d'une part c'est pas dans leur intérêt de changer d'api, d'autre part, c'est dommage de te priver de certaines primitives qui sont super sympas (friend-selector, c'est quand même chiant de le refaire à la main ;) )

  8. tu peux faire ça dès que le dom est initialisé, jusqu'à ce que ta requête soit terminée, sans savoir de trop si ça fonctionne :


    $(document).ready(function(){
    document.getElementsByTagName('body')[0].style.cursor = 'default';
    });

    et remettre en 'auto' dans le callback de ton appel ajax; avec un peu de chance... (peut être moyen d'y accéder via jQuery au cursor, je ne sais pas)

  9. jQuery effectue déjà les requêtes Ajax en asynchrone à moins que tu ne le spécifies dans l'une des propriétés de l'objet (async: true|false de mémoire).

    Sinon c'est dataType dont tu parles qui peut prendre comme valeur xml|html|json|jsonp|script, essaye, mais je pense pas que ça résolve ton souci.

    Quoiqu'il en soit, on n'en sait pas davantage sur ce qui provoque l'apparition du sablier, d'où ma demande :)

    Perso, je n'ai pas de doute sur le fait que ton code fonctionne...mais sans débogueur, j'ai un peu (beaucoup) la flemme de chercher une solution à l'aveugle pour ton souci.

  10. Créer 2 virtualhost me semble pourtant le plus élégant, tu peux toujours jouer avec mod_setifenv... mais bon, si c'est pour te simplifier, ça en vaut encore moins la peine d'autant que virtualhost est quand même fait pour ça : sous VirtualHost, il n'y a pas grand chose pour faire ça si tu regardes bien (Location, Files, Directory ...).

    Note que je suis pas une star d'apache, mais je vois pas plus simple.

  11. le script est sur le serveur à la racine.

    Mets toi un peu à la place des gens à qui tu poses la question (qui d'ailleurs prennent sur leur temps pour te répondre)... c'est...incompréhensible et personne ne peut t'aider. Tu débutes en demandant s'il est possible de mettre en place une zone membre uniquement en html (ce à quoi j'ai répondu non), et maintenant, un script surgit : on ne sait d'ailleurs pas dans quel langage ton script est codé (on imagine PHP).

    Bref, nous n'en savons pas plus sur ton script que ce que tu souhaites faire. On imagine que tu veux mettre en place une zone sécurisée par mot de passe, c'est tout.

    Parti de là, ça va pas être gagné. Sans te demander de diagnostiquer avec précision le coeur de ton problème, essaie au moins d'en décrire les détails... source du script (que tu n'as manifestement pas codé, elle ne doit donc pas être secret-défense), pages dont tu souhaites restreindre l'accès etc.

    Ensuite, tu recevras sans doute de l'aide à la place de demande de précisions ;)

  12. Bonjour et bienvenue :)

    HTML est juste un langage de description; grâce à HTML, tu décris ce qu'une page contient, c'est tout (titres, textes etc.).

    A partir du moment où tu souhaites effectuer des interactions entre le site et l'internaute, tu vas devoir requérir à un langage de programmation comme PHP, qui est certainement le plus facilement abordable.

    Si tu ne souhaites pas apprendre la programmation, il existe de nombreux outils qui vont te permettre d'arriver à tes fins (à peu près) qu'on appelle CMS (pour Content Management System) qui disposent de fonctionnalités, dont le plus souvent celle d'une gestion des membres.

    Quel que soit la solution vers laquelle tu t'orientes, elle te demandera néanmoins pas mal d'investissement personnel car les CMS répondent à des besoins génériques et un effort de customisation est fréquemment à prévoir.

    Bonne chance pour ton projet en tout cas !

  13. Y'a 2 parenthèses fermantes et la requête est correcte; si tu n'obtiens pas de résultat, pose toi d'autres questions.

    Si tu es sûr de toi, fourni un jeu de données qu'on puisse répondre sans perdre de temps ;)

  14. SELECT * FROM esp1animation1 WHERE type='activite' AND WEEK(jour)=WEEK( CURDATE( ) ) 

    Si tant est que jour est bien typé date ou datetime.

    Dans une table MySql

    DATEPART(), c'est pas mssql ?

×
×
  • Créer...