Lettres


[Actu PHP] Lettre N.474 Dimanche 14 Septembre 2008
************************************************************
L'actualité PHP et MySQL
avec Nexen.net
http://www.nexen.net/
Dimanche 14 Septembre 2008
************************************************************
Retrouvez toute l'actualité PHP et MySQL durant la semaine sur
http://www.nexen.net/
************************************************************



Au sommaire
===========
Lundi 08 septembre 2008Mardi 09 septembre 2008Mercredi 10 septembre 2008Jeudi 11 septembre 2008Vendredi 12 septembre 2008Samedi 13 septembre 2008Dimanche 14 septembre 2008
  • [17] Actualité de développement PEAR, edition 219


  • Toute l'actualité en détails :
    ===============================

    [1] Indication de typage pour les scalaires en PHP 5.3Haut ]
    ------------------------------------------------------------
    Max Hovarth publie une bibliothèque phar (une archive PHP),
    qui implémente les indications de typages pour les
    scalaires. Depuis PHP 5.0, on peut indiquer dans le
    prototype d'une méthode ou fonction le type d'objet qu'on
    attend, mais cette capacité ne s'étend pas aux scalaires
    (chaînes, tableaux, etc.) Selon le blogue de Max, PHP 5.3
    et sa bibliothèque permettent de le faire.

    J'ai testé le phar, mais avec une erreur de require_once.
    Ca ne marche donc pas du tout sur ma machine, alors je vais
    retrousser mes manches, et recompiler PHP 5.3alpha 2 (voir
    l'autre news).
    ------------------------------------------------------------
    http://www.nexen.net/actualites/php/18703-indication_de_typage_pour_les_scalaires_en_php_5.3.php


    [2] PHP TV Emission 2 (Septembre 2008)Haut ]
    ------------------------------------------------------------
    PHP TV annonce la sortie de la deuxième édition du
    magazine : l'émission de septembre est en ligne sur
    http://www.phptv.fr !

    Au programme :

    - L'interêt et les fausses idées que l'on se fait des
    requêtes préparées.
    - Des nouvelles de PDO et le wiki de PHP.
    - Reportage : le premier barcamp français sur PHP.
    - Débat : les espaces de noms (namespaces).
    - Interview : Arnaud Limbourg, président de l'AFUP.

    Pour le confort de tous, PHP TV évolue :

    - Diffusion séparée des rubriques : à vous de choisir !
    - Mise à disposition d'un flux podcast.
    ------------------------------------------------------------
    http://www.nexen.net/actualites/php/18705-php_tv_emission_2_septembre_2008.php


    [3] PHP 5.3alpha2Haut ]
    ------------------------------------------------------------
    La version alpha2 de PHP 5.3 est disponible sur le site de
    l'assurance qualité. Vu la masse de nouveautés et
    réécritures, il est recommandé à tout le monde de
    compiler la bête, faire tourner les 5000+ tests unitaires
    et tester le tout avec vos applications finales et
    préférées.

    Il est encore temps de faire corriger une incompatibilité
    ascendante!


    curl -O
    http://downloads.php.net/johannes/php-5.3.0alpha2.tar.bz2
    bunzip2 php-5.3.0alpha2.tar.bz2
    tar -xf php-5.3.0alpha2.ta
    cd php-5.3.0alpha2
    ./configure
    make
    make test
    ------------------------------------------------------------
    http://www.nexen.net/actualites/php/18704-php_5.3alpha2.php


    [4] L'état du monde du scriptingHaut ]
    ------------------------------------------------------------
    PHP, JavaScript, Ruby, Perl, Python et Tcl sont les membres
    du club des logiciels de script : contrairement aux C, C++,
    Fortran ou Java, ils ne sont pas compilés, mais exécutés
    directement à partir du code source. C'est cette raison
    même qui les a présenté comme des jouets lors de leur
    naissance, et il leur a fallu plusieurs années pour gagner
    la reconnaissance de leurs pairs. CIO magazine a interrogé
    un expert par technologie pour faire le point sur la
    progression de ce pan de l'industrie informatique. Pour PHP,
    c'est Robert Pall qui s'y colle.
    ------------------------------------------------------------
    http://www.nexen.net/actualites/web/18708-letat_du_monde_du_scripting.php


    [5] Le tour du monde des éléphpantsHaut ]
    ------------------------------------------------------------
    J'en rêvais, et Ivo Jansch et Cal Evans l'ont fait : un
    site consacré aux éléphpants, et à tout ces endroits où
    ils sont allés dans le monde. C'est le 'ElePHPants World
    Tour 2008', où on le voit qui grimpe aux cocotiers, visite
    la Falkirk Wheel (Angleterre), fait du snowboard ou encore
    téléphone dans une cabine (so prehistoric!). Vous pouvez
    d'ailleurs rechercher une large gamme d'autres photos sur
    flickr, via les mots clé ou carrément le groupe
    'elephpant'.

    Si vous voulez en ajouter, c'est aussi possible : Cal et
    Ivo ont maintenant un concours, avec des lots (et peut être
    des surprises à venir).
    ------------------------------------------------------------
    http://www.nexen.net/actualites/php/18707-le_tour_du_monde_des_elephpants.php


    [6] Les espaces de noms en PHP et leurs limitationsHaut ]
    ------------------------------------------------------------
    Elizabeth Marie Smith liste les 4 points et demi qui la
    gène dans la gestion des espaces de noms qui arrivent avec
    PHP 5.3 (déjà testé?). Il y a notamment le fait que les
    espaces de noms sont 'par fichier'. Il faut effectivement
    mettre les importations d'espaces dès le début du script
    (y compris, les lignes vide au début), et on ne peut plus
    en changer ultérieurement ( à moins d'inclure un autre
    fichier).

    Ses doléances vont aussi à l'encontre de la gestion des
    NS pour les fonctions, où une fonction et une méthode
    statique importée peuvent être complètement ambiguës :
    Foo() peut faire référence à une fonction classique, ou
    à une méthode statique, importée d'un espace de noms.

    De quoi réfléchir avant de se lancer dans l'aventure.
    ------------------------------------------------------------
    http://www.nexen.net/actualites/php/18706-les_espaces_de_noms_en_php_et_leurs_limitations.php


    [7] 10 mantra des maîtres PHPHaut ]
    ------------------------------------------------------------
    Nettuts a rassemblé 10 principes fondamentaux de
    programmation en PHP, exprimé par de grands sages PHP
    (s'ils existent), notamment, Rasmus Lerdorf et Matt
    Mullenweg. 'Ne faites jamais confiance à vos utilisateurs'
    ou encore 'Utilisez de nombreuses tables pour gagner en
    montée en charge'.

    Certains mantra sont même conflictuels, comme ceux sur les
    frameworks, mais au final, il y a la une belle liste de
    concept à retenir avant de se lancer en PHP.
    ------------------------------------------------------------
    http://www.nexen.net/actualites/php/18709-10_mantra_des_maitres_php.php


    [8] XSS à coup de slashHaut ]
    ------------------------------------------------------------
    Christian stocker vient de corriger une attaque XSS étrange
    : elle se base sur l'interprétation que font les
    navigateurs du caractère slash : /. En l'occurrence, il
    peut être remplacé par un espace quand le navigateur ne
    sait pas trop quoi en faire. Ce qui signifie que devient
    effectivement du code HTML valide.

    A court terme, la solution est bien de compléter les
    filtres HTML, mais à plus long terme, comment se prémunir
    contre ces interprétations bizarres et non-documentées?
    Selon Christian, passer par la regénération XML du code
    est une bonne protection : au lieu d'utiliser les données
    brutes, elles sont produites par DomDocument (ou par
    n'importe quel outil de production XML), afin de s'assurer
    que le code HTML final est valide.

    Et valide au sens des standards que tout le monde comprend,
    et pas ceux que les navigateurs comprennent!
    ------------------------------------------------------------
    http://www.nexen.net/actualites/securite/18710-xss_a_coup_de_slash.php


    [9] Statistiques PHP d'Août 2008Haut ]
    ------------------------------------------------------------
    Les statistiques de diffusion PHP dans le monde pour août
    2008 sont arrivées.
    ------------------------------------------------------------
    http://www.nexen.net/actualites/php/18715-statistiques_php_daout_2008.php


    [10] XSS, un nouvel artHaut ]
    ------------------------------------------------------------
    Gareth Heyes détaille son cheminement pour construire une
    attaque XSS qui passe les défenses de PHP-IDS. PHP-IDS est
    une bibliothèque de détection, qui surveille les entrées
    à l'aide de regex et d'une centrifugeuse : cet élément
    abscons compare des valeurs valides et des valeurs
    dangereuses avec l'entrée courante pour évaluer la
    dangerosité d'une valeur qui passerait les regex initiales.

    Pour passer ces deux rideaux défensifs, il a fallu à
    Gareth éviter les +, concat et eval. Le vecteur final passe
    par un espace de noms, qui semble être bien mal protégé.

    Lisez le tout, c'est édifiant, pour apprendre à
    construire une attaque. Qui peut résister à cela?
    ------------------------------------------------------------
    http://www.nexen.net/actualites/securite/18714-xss,_un_nouvel_art.php


    [11] 75 javascript vraiment utilesHaut ]
    ------------------------------------------------------------
    Smashing magazine continue de m'étonner, avec cette liste
    ahurissante de .js qui peuvent être inclus simplement dans
    vos pages Web pour faire de la complétion ajax (facile!),
    de la césure automatique (!!!), traiter des dates, faire
    une galerie d'images, des bulles d'aide contextuelles, etc..
    Ouf, j'en ai lu la moitié, et je suis déjà en train
    d'écrire cet article.
    ------------------------------------------------------------
    http://www.nexen.net/actualites/php/18712-75_javascript_vraiment_utiles.php


    [12] Actualité de développement PECL, edition 216Haut ]
    ------------------------------------------------------------
    4 paquets ont été mis à jour cette semaine :


    memcache : cache mémoire
    imagick : interface avec la bibliothèque graphique
    ImageMagick
    phar : support des fichiers d'archives PHP : .phar
    funcall : ajout des callback à n'importe quelle méthode
    ou fonction


    PECL est la bibliothèque d'extensions C de PHP.
    ------------------------------------------------------------
    http://www.nexen.net/actualites/pecl/18713-actualite_de_developpement_pecl,_edition_216.php


    [13] Alertes sécurité des applications PHP et MySQL, édition 219Haut ]
    ------------------------------------------------------------
    PHP et MySQL ne font l'objet d'aucune alerte de sécurité
    dans leurs versions courantes :
    PHP 5.2.6 et 4.4.9; MySQL 5.0.67 (communauté) , 5.1.26 et
    6.0.6.
    Les mises à jour sont recommandées vers ces versions.


    7 alertes de sécurité ont été émises cette semaine,
    concernant des applications suivantes :

    Drupal, Gallery, Horde, Invision Power Board, Joomla,
    WordPress et vBulletin
    ------------------------------------------------------------
    http://www.nexen.net/actualites/securite/18719-alertes_securite_des_applications_php_et_mysql,_edition_219.php


    [14] Tutoriel OpenID avec PHPHaut ]
    ------------------------------------------------------------
    OpenID est une de ces technologies fort pratique, qui permet
    d'industrialiser les capacités d'identification sur le Web.
    Industrialiser, au sens utilisateur du terme : au lieu
    d'ouvrir des millions de comptes sur différents sites, et
    de les oublier (ou d'utiliser une application de mot de
    passe pour la gérer), vous pourriez mettre en place une
    identité OpenID, pour utiliser une seule carte de visite.

    Comment ? Probablement en lisant d'abord cet article, bien
    orienté pour programmeurs PHP.
    ------------------------------------------------------------
    http://www.nexen.net/actualites/tutorial/18718-tutoriel_openid_avec_php.php


    [15] Patchs Google pour MySQLHaut ]
    ------------------------------------------------------------
    Google avait attiré l'attention du monde MySQL en publiant
    un patch au code source pour une réplication synchrone :
    les transactions sont validées dans le maître quand elles
    ont été validées au moins sur un esclave. Voilà
    résolvait le problème de retard de réplication de
    nombreuses architectures.

    Depuis, je n'ai pas relevé de nouvelles, mais le projet
    n'est pas mort, loin de là! Il y a une longue liste de
    patch pour MySQL 4 et 5. Il y a des statistiques
    d'utilisation des ressources beaucoup plus fines que celles
    fournies de base, et notamment cette perle de
    MySQLPerformancesBlogue pour identifier les index
    inutilisés!

    InnoDB est aussi le centre de beaucoup d'attention, ainsi
    que les mutex (pour les accès concurrents), et les
    informations de surveillances. Il y a même un serveur HTTP
    intégré à MySQL..

    Notons que ce patch requiert une version recompilée de
    MySQL, ce qui va en freiner l'utilité. Ni Proven Scaling,
    ni Percona ne distribue de version patchée actuellement. Un
    candidat?
    ------------------------------------------------------------
    http://www.nexen.net/actualites/trucs/18717-patchs_google_pour_mysql.php


    [16] Afficher facilement les droits de nombreux utilisateursHaut ]
    ------------------------------------------------------------
    MySQL dispose de la commande SHOW GRANTS pour afficher les
    droits d'un utilisateur, pour peu que l'on connaisse son nom
    et son hôte. C'est pratique de manière atomique, mais
    comment s'y prendre pour traiter un site avec 50
    utilisateurs et plus? Il est impensable de rechercher tous
    les droits de tous les utilisateurs.

    Les tables mysql.* vous donneront la solution, mais la
    hiérarchie des droits de MySQL nous rattrape : pour
    détecter un droit de lecture dans une table, il faut
    vérifier que l'utilisateur a les droits dans la base ...
    et au niveau global.

    Sheeri a trouvé la solution en une seule requête, via
    UNION. Plus une autre requête pour produire directement les
    requêtes de SHOW GRANTS, pour aller encore plus loin.
    ------------------------------------------------------------
    http://www.nexen.net/actualites/trucs/18716-afficher_facilement_les_droits_de_nombreux_utilisateurs.php


    [17] Actualité de développement PEAR, edition 219Haut ]
    ------------------------------------------------------------
    3 paquets ont été mis à jour cette semaine :

    Text_Diff : Moteur pour effectuer et afficher des
    différences de texte
    XML_RPC2 : Bibliothèque client/serveur XML-RPC
    HTML_Template_PHPLIB : Système de gabarit basé sur les
    regex


    PEAR est la bibliothèque de composants PHP.
    ------------------------------------------------------------
    http://www.nexen.net/actualites/pear/18720-actualite_de_developpement_pear,_edition_219.php




    ***************************************************************
    Attention :
    Cette lettre hebdomadaire est distribuée aux personnes
    qui se sont inscrites sur le site http://www.nexen.net,
    comme membres et comme destinataires de cette lettre.
    Les instructions de modifications sont disponibles en bas
    de ce mail.

    Des commentaires? des questions? des informations à suggérer?
    Contactez l'éditeur de la lettre avec l'adresse suivante :
    damien.seguy@nexen.net

    ***************************************************************
    Pour modifier votre abonnement ou vous désincrire :
    http://www.nexen.net/services/login.php?direction=diffusion.php

    Pour retrouver votre accès membre sur nexen.net :
    http://www.nexen.net/services/motperdu.php

    Pour devenir membre de nexen.net :
    http://www.nexen.net/services/login.php?direction=diffusion.php

    L'actualité journalière sur nexen.net :
    http://www.nexen.net/news/index.php
    ***************************************************************
    Cette lettre hebdomadaire est un un service de Nexen.net,
    portail technologique PHP et MySQL éditée par la société
    Nexen Services SA au capital de 49.536 Euros
    inscrite au registre du commerce de Paris : RCS B 423 995 224