Aller au contenu

SStephane

Hubmaster
  • Compteur de contenus

    726
  • Inscrit(e) le

  • Dernière visite

Messages postés par SStephane

  1. Pour les "lignes" de carrés, ceux qui vont le plus à droite (ie les rouges) contiennent les autres (position relative, width 100%, height ce que tu veux).

    Ceux qui sont dedans sont en float ou ce que tu veux pour les faire tenir comme ça.

    Pour le vert, position:absolute et tu joues sur le margin pour le bouger (d'ou le position relative des container, sinon ça ne fonctionnera pas), d'après moi, c'est le plus simple et le plus portable car tu pourras faire n'importe quoi après, et ça passera partout.

  2. Bonjour,

    Les disques durs de travail (développement) dont je dispose commencent à se remplir dangereusement. Aussi, je cherche à acheter de l'espace et mes connaissances en matériel sont plus que limitées. J'ai besoin de beaucoup d'espace (1TO mini), de performances correctes d'accès disque (compilations de projet java, flex; compression de vidéos; requêtes sur de grosses BDD, stockage sur des serveurs de version etc.) et je n'ai pas de crédits illimités. (Ces disques seront montés en raid 1 pour info si cela a une importance, il y a du windows et du Linux).

    Je cherche donc à trouver le meilleur rapport qualité prix/octet, on m'a conseillé WD et samsung mais je serai ravi d'avoir l'opinion argumentée de personnes plus calées que moi en hard si vous avez un instant à me consacrer !

    Stéphane [quiche en hard]

    PS : ceci n'est pas un troll :)

  3. Pourquoi pas si tu es le seul à utiliser le service smtp de ton serveur, seul le port 25 est bloqué en général; cependant la majorité des fai permettent néanmoins d'ouvrir le port smtp sortant en quelques clics, c'est le cas de free dans l'espace client (et je pense que c'est également possible avec une livebox, mais je ne peux te le confirmer).

    Sinon la solution de jacques parfaitement valable.

  4. D'un part je comprends mal ton découpage, d'autre part je vois pas en quoi ton objet aurait une "vie" plus longue en java ou dans un autre langage qu'en php ou on ne manipule généralement pas vraiment la mémoire. C'est du web, pas de l'applicatif.

    Tu dois tout recommencer à chaque fois ? si tu gères pas de système de cache, j'ai envie de te dire oui. Cacher, c'est inclut dans struts, .net, symfony, zend, django (pas sectaire sur le langage).

    Alors que dans un logiciel qui serait en java par exemple, les objets, une fois instanciés, existent jusqu'à la fermeture du logiciel.

    Il existent jusqu'à ce que le garbage collector passe par là, sinon il faudrait relancer le service du pôle-emploi toutes les 5 minutes :)

    Mais là, dans un système client-serveur, c'est un peu comme si on lançait le logiciel des milliers de fois, au moindre affichage de page par un visiteur, voire même à la moindre requête Ajax !

    J'ai pas bien compris, mais des milliers d'objets seront instanciés (et détruits), c'est clair (en php ou en java), et alors ? En procédural comme en objet, l'algorithmie est une notion importante, et c'est surtout de ce point de vue qu'il convient de bien faire ton travail. La quantité d'objets est peu importante et objet ou pas, la complexité (au sens de complexité, d'ailleurs, tu l'évalueras mieux en objet qu'en procédural) restera la même.

    N'est-ce pas étonnant, de devoir tout faire deux fois ?

    Tu as du taf :)

    On ne fait pas du MVC pour faire le travail 2 fois (c'est le mvc que tu remets en cause), on le fait pour séparer les couches.

    Prenons exemple ce topic qui est affiché ici et qui potentiellement peut remonter en page d'accueil/rss/ws etc. Chacun de ces affichages est généré par un contrôleur © et présenté en html par une vue (V). Les contrôleurs accèdent à la base de données par les modèles (M). Pourquoi ?

    Simplement parce que dans le cas présent, les contrôleurs RSS/topic/accueil appellent le même modèle (la table topic dans le cas présent) et peut potentiellement utiliser les mêmes requêtes, le découpage est donc une manière au contraire de ne pas refaire les choses 2 fois ie réécrire les requêtes 2 fois.

    Autre chose, un topic de ce forum parle de générer un site pour mobile actuellement. Dans ce cas précis, on utilise les mêmes contrôleurs, les mêmes modèles mais des vues différentes (on peut feinter en css, mais ce n'est pas le propos, CSS = Vue, html = vue).

    Imagine que tu doives générer du wml à la place du html, tu n'auras que la vue à changer,

    Imagine que tu veuilles migrer sous postgre, tu n'auras que les model à modifier (et pas trop s'il est abstrait).

  5. Mysql workbench a de nombreux plugins qui permettent de faire pas mal de trucs (j'utilise ce soft personnellement, avec un plugin pour l'export yaml). Je ne sais pas s'il pourra faire ce que tu souhaites, sinon il y a des outils microsoft.

    Idem que siriu, à la fac j'utilisais un truc open-source qui s'appellait umbrello, qui n'était pas stable du tout à l'époque mais qui faisais ce que tu semble vouloir... tentes le coup :)

  6. Rectangle est pourtant présent dans l'api AS2 (si tu peux compiler pour flashplayer 8 avec ta version de flash) http://demo.ligams.free.fr/AS2LR/

    Sinon pour inclure une libraire, tu peux inclure en faisant preférences > paramètres d'actionscript et tu ajoutes ton dossier

    Je te dis ça à l'aveugle, parce que MX2004, je ne m'en suis jamais servi pour être honnête, mais cherche un truc qui ressemble à ça.

  7. Si vous avez fait tout ça en procédural, c'est sans doute très bien, je dis pas le contraire; cela dit, vous avez sans doute réinventé la roue, ça existe déjà dans tous les frameworks (ie vous avez perdu du temps). Ca n'est qu'une hypothèse, sans voir le code, c'est dur de dire.

    Je donne juste un exemple (qui colle à l'objet) : je veux un module qui offre des fonctionnalités génériques (ajout/suppression/modif) + certaines hyper spécifiques, en objet, tu fais un truc du genre (valable quasi partout, qq soit le framework) :


    class SpecificController extends GenericController{
    function __construct(){
    parent::__construct();
    //+ traitement spec
    }
    function specific1(){
    }
    function specific2(){
    }
    }

    En procédural, je vois mal comment le faire proprement. Fondamentalement, je ne vois pas comment utiliser une seule fois la logique pour plusieurs rendu/traitements différents. Note que ce n'est qu'un exemple, je ne parle même pas d'abstraction, d'accès db, de tests unitaires etc.

    Faire du MVC en procédural, c'est possible. C'est plus facile avec de l'objet voilà tout, et la totalité de ce que j'ai vu en procédural était un étendard de ce que l'on fuit généralement en MVC.

  8. Hello,

    l'utilité de faire de l'objet en PHP, mais pour savoir vraiment quels sont les avantages et les inconvénients (s'il y en a) de faire de l'objet en PHP.

    Même si c'est à mon sens incontournable, il doit bien exister des inconvénients : ne serait-ce que celui-ci : tous les développeurs ne font pas de l'objet ou l'utilisent mal (ce qui revient à faire du procédural). Les ressources sur le marché du travail sont plus rares, donc plus chères (point de vue dirigeant); d'autre part le temps que toi et tes collègues soyez formés, vous allez perdre du temps.

    Jusqu'à peu, notre chef d'équipe refusait catégoriquement de faire de l'objet en PHP, il disait : "je ne vois pas l'intérêt de faire de l'objet avec un langage procédural, si je veux faire de l'objet je choisirai un langage qui est vraiment fait pour ça, mais certainement pas PHP". Et il ne disait pas cela par ignorance : il était avant tout un spécialiste de Java, donc du pur objet. Dans le même ordre d'idées, il refusait de gérer les relations avec mysql (avec le moteur InnoDB), il disait : "si je veux gérer les relations dans ma base de données, je choisis PostgreSql, qui est vraiment fait pour ça".

    Il a quel âge ? certes, php4 n'offrait que peu de fonctionnalités objets, mais php5 et même les versions les plus récentes offrent quasiment toutes les fonctionnalités qu'il faut pour faire à peu près ce qu'on veut (typage, namespace, interface, abstract...).

    Ce qui choque les développeurs la première fois avec php, c'est l'absence de typage fort, le côté moche du code et certains trucs pouvant paraître bizarres au premier abord. Quoi

    Dans tous les cas (y compris en php4), je comprends mal (à part en invoquant les raisons plus haut) ce qui pouvait motiver ton ex-chef à refuser de développer objet. L'argumentation ne tient pas vraiment la route ("qui est vraiment fait pour ça"), c'est comme si je lançait un projet c#, récusant java à cause de son absence de delegate...

    Le principal avantage de l'objet est simple : gagner du temps. (Je ne parle pas de la phase d'apprentissage).

    On ne fait pas de l'objet pour faire de l'objet (sinon je rejoins ton ex-chef), on fait de l'objet pour développer plus vite, abstraire son code, et réutiliser certains composants tels quels de projet à projet en faisant des fois évoluer ces composants (que l'on peut dans certains cas appeler framework d'entreprise).

    Pour lister les avantages rapidement voilà :

    • gain de temps
    • ré-utilisabilité du code, capitalisation d'un framework pour l'entreprise(*)
    • harmonisation des développements (à développer au sein de la boite, convention de nommage etc.)
    • complétion dans les ide de dév quand les sources sont commentées (netbeans par exemple, zend studio)
    • lisibilité
    • ...

    Je pousse néanmoins la logique plus loin concernant l'objet : utiliser un framework et d'un orm pour gagner plus de temps (toi qui parlait de sgbdr), il y en a pas mal sur le marché aujourd'hui.

  9. Quand tu édites un langage, c'est quand même plus simple de te mettre d'accord avec toi-même que d'être à la place du w3 qui doit accorder les violons de X acteurs du marché. Le w3 est force de proposition, s'ils se mettent à imposer leur volonté demain, il y a fort à parier qu'effectivement là, ils perdront toute crédibilité.

    C'est à mon sens un travail de diplomatie, et pour ça, je ne porterai pas de jugement parce que j'en sais rien (la volonté de microsoft de passer les tests acid pour IE est quand même un indicateur de la réussite de leur travail, non ?).

    Bref, c'est une nébuleuse qui dépasse la plupart des intervenants d'ici (mon cas), j'utilise les outils à ma disposition, et je trouve qu'il y en a pas mal. Maintenant, content, pas content ? honnêtement, voilà mon point de vue et ce n'est pas le w3 qui rythme mon taf.

    En fait, je ne comprends pas pourquoi tu fustiges leur action avec tant de véhémence, je pense que c'est le cas des autres qui t'ont répondu.

  10. Le W3C a pour mission de protocoler les échanges sur internet, pas seulement html, mais svg, soap etc... (si j'ai bien tout lu Freud), ils le font.

    Tu souhaites aller plus loin et sortir des sentiers battus ? tu as du propriétaire (flash, flex, silverlight, javafx, laszlo...).

    Dans le fond personne ne te force à utiliser une balise video ou canvas, et ce serait bête d'avoir recours à du svg juste parce que c'est valide si personne ne peut le lire correctement, et si tu perds du temps à faire un truc qui se fait en 3 secondes dans flash.

    Très franchement, il n'y a pas beaucoup de frein à la créativité aujourd'hui, et je ne vois pas en quoi le w3c en serait un.

    Derrière, à toi de choisir si tu respectes les protocoles (ou sémantique dans le cas d'html) ou pas; c'est comme pour l'orthographe avec les académiciens, ça évolue : tantôt ils suivent le mouvement, tantôt le précèdent.

  11. j'ai constamment

    int 30711

    int 22527

    bzertbzbreztbez

    Quoi que je change dans le php.ini.

    C'est très bien si tu as ça, t'as certainement E_ALL & ~E_NOTICE dans php.ini, par contre si tu le change dans le ini et que ça bouge pas à l'affichage, soit tu ne charges pas le bon php.ini, soit tu ne relance pas apache :)

    Et oui, je crois qu'il y a un autre error_reporting exécuté ultérieurement dans ton appli. (fait un print error_reporting(); en bas de ta page pour t'en convaincre, t'auras certainement pas 22527 qui n'afficherait pas les E_DEPRECATED).

  12. En fait E_ALL ^ E_DEPRECATED devrait fonctionner.

    <?php
    $old = error_reporting( E_ALL ^ E_DEPRECATED);
    var_dump($old);
    var_dump( E_ALL ^ E_DEPRECATED);
    print eregi_replace('a', 'b', 'azertazareztaez');
    ?>

    Devrait de renvoyer int(30719) int(22527) bzertbzbreztbez (la première valeur dépend de ton php.ini)

    Essaie donc error_reporting( E_ALL ^ 8192 ); si ça ne fonctionne pas (vois la valeur de old)

    En fait, il doit y avoir un autre appel à error_reporting qq part dans typo3 qui surcharge le tiens (si tu n'as pas désactivé la fonction dans php.ini).

  13. Euh, t'as un truc bizarre là, E_ALL & ~E_NOTICE, ca devrait être 6135, pas 30711 ^^

    Essaie

    error_reporting(6135); 

    (c'est déconseillé en prod de pas utiliser les constantes)

    Si ça marche pas :

    php_value error_reporting 6135

    dans ton htaccess, afin de ne pas y passer trop de temps :)

    Si ca marche toujours pas, typo3 a surement un gestionnaire d'erreurs (si ce que je pense est vrai), alors display_errors = off (comme en prod )

  14. Etrange, es-tu certain que la fonction error_reporting est appelée ? le mieux, modifie directement ça dans php.ini

    Si tu as défini un gestionnaire d'erreur avec set_error_handler(), cette fonction est sans effet, cela peut être le cas si tu utilises un framework qui ont en général leur propre gestionnaire d'erreur (je dis ça de mémoire pour le truc du sans effet).

    au pire, quel est le résultat de ça ?


    $old = error_reporting(E_ALL & ~E_NOTICE)
    var_dump($old);
    var_dump(E_ALL & ~E_NOTICE);
    var_dump($old==(E_ALL & ~E_NOTICE));

    Sinon, si il n'y en a pas trop, change les eregi_replace dépréciés par des preg_replace :)

  15. Hello,

    D'instinct je dirai utiliser le dom pour ajouter du html.

    L'explication est certainement due au fait que cette méthode est me semble t-il dépréciée, et, bien qu'implémentée dans la majorité des navigateurs, elle ne l'est peut être pas dans ie9, ou peut-être différemment genre ie9 supprime les tags pour protéger les utilisateurs des scripts malveillants.

  16. http://www.jqplot.com/

    JS est très efficace quand l'algorithmie est correcte. Par contre, considérer svg comme une alternative sérieuse à flash est à mon avis un doux rêve (SVG : verbeux, pas portable, indébogable).

    Canvas convient également si tu t'investis en JS, mais quel effort pour éviter d'utiliser des technos propriétaires !

    je ne travaille pas pour Adobe, mais il y a des primitives en Flex (Framework gratuit d'Adobe) qui permettent de faire tout ce qu'on souhaite en matière de graphiques, économisant beaucoup d'effort. Si on ne veux pas investir dans flashbuilder (qui n'est pas cher), il y a flashdevelop (l'un des ide les plus agréables à utiliser d'ailleurs).

    Bref, JS, java, Flash, Silverlight ou autre, tu devras charger tes données ; toutes ces technos te permettent d'obtenir l'affichage que tu souhaites. Le bon choix est à mon avis d'opter pour la techno qui te demande le moins d'effort pour un résultat comparable.

  17. Hello, la première remplace tout ce qui n'est pas unicode et numérique en '-'

    C'est quoi l'iso déjà ? ;)

    Plus sérieusement => mb_convert_encoding()

    Je ne modifie pas les entités html, je n'en vois pas l'intérêt mais ta fonction le fait très bien et mixer les 2 dans ces cas là peut être nécessaire.

×
×
  • Créer...