Lettres
[Actu PHP] Lettre N.133 Dimanche 14 Mars 2004
************************************************************
L'actualité PHP et MySQL
avec Nexen.net
http://www.nexen.net/
Dimanche 14 Mars 2004
************************************************************
Attention :
Cette lettre hebdomadaire est distribuée aux personnes
qui se sont inscrites sur le site 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 indiquée en
bas de ce mail.
Edito
=====
Pour être un développeur reconnu en PHP, il faut programmer
en langage C. Ce n'est pas une règle écrite, mais on la subit
partout.
Sauriez vous nommer un auteur d'extension? Derick, Ilia,
George, Rasmus, Sterling, Dan, Wez, Stig, Thies...
Sauriez vous nommer un rédacteur de la documentation?
mmm deja plus dur...
Sauriez vous nommer un membre du groupe PEAR?
Etrangement, la communauté PHP est centrée autour
des développeurs du langage. Un auteur qui ne code
pas en C, aussi excellent que possible, aura toute les
peine à être reconnu.
Il ne faut pas confondre développer PHP et développement
en PHP. Les aspects utilisateurs sont trop méconnus :
ergnomie des sites, fonctionnalités, standards, inter-
opérabilité, interfaces non-web. Tout cela fait partie du
métier de développeur d'application web. Cela mérite
d'être reconnu.
Damien Seguy
Venez discuter de la lettre hebdo et de l'actualité sur le forum :
http://www.nexen.net/forum/list.php?f=14
Site de la semaine
==================
Tous les ateliers PHP/MySQL
"Avec PHP et MySQL, vous pourrez créer des pages dynamiques
facilement sur votre site. Retrouvez dans ce cahier tout ce qu'il faut
pour les débutants ou les experts du Web !"
Le site de Lycos fournit plusieurs ateliers pour se lancer
en PHP. Les articles sont tout en français.
Les outils du Pro
Maîtrisez les outils des développeurs aguerris
Installation d'un serveur de développement
Applications pratiques
Développez votre site avec PHP
Création d'un livre d'or
Un moteur de recherche sur votre site
Création d'un module de sondage
http://webmaster.lycos.fr/topics/technic/php/index.phtml
Au sommaire
===========
Toute l'actualité en détails :
===============================
[1] MySQL résout le problème PHP [ Haut ]
------------------------------------------------------------
Depuis la version 4.1, MySQL a modifié la licence qui couvre
les bibliothèques clientes pour les mettre sous licence
GPL. Elles étaient sous licence LGPL jusqu'ici et certains
éditeurs exploitaient cela pour les inclure sans verser de
royalties à MYSQL AB. La nouvelle licence les empêche de
faire cela, mais la conséquence a été d'empêcher PHP
d'inclure MySQL dans sa distribution : conflit de licence.
PHP est sous Apache, alors que MySQL est sous GPL. En
conséquence, l'extension MySQL a été ramenée à un statut
d'extension classique et d'autres bases en profitent pour
occuper le terrain : SQLite, Oracle et MSSQL jouent des
coudes.
MySQL AB a donc publié une exception à sa licence, qui
permet à PHP de reprendre le cours habituel de son
développement avec MySQL.
------------------------------------------------------------
http://dev.nexen.net/news/gen.php3/2004/03/14/2761,0,1,0,0.php3
[2] L'agence fédérale GAO préfère PHP à Java [ Haut ]
------------------------------------------------------------
Le GAO (U.S. General Accounting Office, agence de
comptabilité fédérale) a monté son propre système d'audit,
basé sur PHP et MySQL. Cette agence réalise des sondages
allant de 50 à 22000 sondés. Le PHP a été choisi notamment
pour la sécurité des applications, notamment face à Java.
De plus, certains sondés ont des qualités de connexion très
faibles (comme les rangers d'Alaska) et ne peuvent se
permettre le luxe de télécharger de gros programmes Java.
PHP, au contraire, donne un résultat universel et léger.
Cela a fait la décision. (Lien PHP|Architect)
------------------------------------------------------------
http://dev.nexen.net/news/gen.php3/2004/03/14/2760,0,1,0,0.php3
[3] Actualité de développement de PEAR [ Haut ]
------------------------------------------------------------
13 paquets ont été mis à jour :
DB : couche d'abstraction de base de données
I18Nv2 : Internationalisation
LiveUser : identification et permissions des utilisateurs
Mail_IMAP : interface c-client pour webmail
MDB2 : couche d'abstraction de base de données
Net_FTP : interface objet pour les fonctions FTP
Net_LDAP : Interface objet pour les fonctions LDAP
Net_Sieve : interface avec les serveurs timsieve
Net_SMTP : implémentation du protocole SMTP
Net_UserAgent_Detect : détermine le navigateur web, sa
version et la plate-forme
PHP_CompatInfo : recherche la version minimum et les
extensions nécessaires à un script pour fonctionner.
Text_Wiki : règle d'analyse et d'affichage pour les balises
Wiki.
XML_XUL : classe Mozilla XUL
------------------------------------------------------------
http://dev.nexen.net/news/gen.php3/2004/03/14/2759,0,1,0,0.php3
[4] Alertes de sécurité [ Haut ]
------------------------------------------------------------
4 alertes de sécurité ont été émises concernant des
applications PHP et MySQL.
Elles concernent VirtuaNews, InVision PowerBoard, et
Confixx
VirtuaSystems VirtuaNews Admin.PHP Cross-Site Scripting
Vulnerability
Invision Power Board Cross-Site Scripting Vulnerabilities
Invision Power Board Error Message Path Disclosure
Vulnerability
Confixx "db" Parameter SQL Injection
Vulnerability
------------------------------------------------------------
http://dev.nexen.net/news/gen.php3/2004/03/13/2758,0,1,0,0.php3
[5] Sécurisation avec Crypt_HMAC [ Haut ]
------------------------------------------------------------
"HMAC est similaire au système PGP/GPG, hormis le fait
qu'il n'y a qu'une clé, plutôt qu'une paire. HMAC est
utilisé pour assurer l'intégrité du message lorsque deux
personnes partagent une même clé. Dans cet article, [issu
de PHP-Magazine], Davey Shafik exploite cette
fonctionnalité dans une page d'identification de site
web".
------------------------------------------------------------
http://dev.nexen.net/news/gen.php3/2004/03/13/2757,0,1,0,0.php3
[6] PHP pour les joggers [ Haut ]
------------------------------------------------------------
phprunman tient à jour votre comptabilité de courses et
distances. C'est une application utilitaire, destinée à
enregistrer les courses réalisées, les distances et des
commentaires. Elle se charge de classer l'ensemble, et de
fournir des stats et un graphique d'ensemble. Elle fait
aussi des évaluations de performances sur différentes
distances. Cette application est disponible en français et
en anglais. Paru sur PHP-mag.
------------------------------------------------------------
http://dev.nexen.net/news/gen.php3/2004/03/13/2756,0,1,0,0.php3
[7] Kwartz d'Iris Technologies intègre MySQL [ Haut ]
------------------------------------------------------------
"Le serveur d'Iris Technologies, fondé sur GNU et des
logiciels libres, devrait intéresser les petites et
moyennes structures en quête d'un système bon marché et
simple à administrer.[..] Kwartz intègre des applications
reconnues : base de données MySQL , serveur de
messageries Courier et Exim, Bind, Samba , Apache ,
Squid..."
------------------------------------------------------------
http://dev.nexen.net/news/gen.php3/2004/03/13/2755,0,1,0,0.php3
[8] gphpedit [ Haut ]
------------------------------------------------------------
gphpedit est un éditeur PHP pour Gnome2. Il reconnait la
syntaxe PHP, HTML, CSS et SQL. Il propose un navigateur
pour s'y retrouver dans les classes, et un débogage
rudimentaire des erreurs de syntaxe. Le logiciel est
gratuit, livré sous licence GPL. La version courante,
0.9.10, date du 10 mars 2004.
------------------------------------------------------------
http://dev.nexen.net/news/gen.php3/2004/03/12/2754,0,1,0,0.php3
[9] Misères commerciales chez MySQL AB [ Haut ]
------------------------------------------------------------
George Schlossnagle a eu bien du mal à obtenir une licence
de la bibliothèque cliente de MySQL. Lorsqu'on intègre
MySQL dans un produit propriétaire, il faut payer la
licence. Le problème de George commença lorsqu'il décida de
se procurer cette licence pour la librairie cliente : les
clients ont souvent leur serveur, pas besoin de le
distribuer.
Au final, pour 50$, on imagine qu'il faut surtout
automatiser le processus de vente chez MySQL : les ventes
seront nombreuses, mais petites.
------------------------------------------------------------
http://dev.nexen.net/news/gen.php3/2004/03/12/2753,0,1,0,0.php3
[10] Projets PHP 5 à surveiller [ Haut ]
------------------------------------------------------------
Harry Fueck fait le tour des projets PHP 5 qui ont attiré
son attention.
+ cowiki, le wiki de phpcommunity
+ Creole, couche d'abstraction de base de données
+ Propel, une interface entre les classes et les bases de
données SQL
+ Phing, projet de compilation de PHP, basé sur Apache Ant.
------------------------------------------------------------
http://dev.nexen.net/news/gen.php3/2004/03/11/2752,0,1,0,0.php3
[11] Mesurer la vitesse des scripts PHP [ Haut ]
------------------------------------------------------------
PHP-Magazine rassemble les solutions disponibles pour
mesurer la vitesse d'exécution d'un script PHP :
+ En ligne de commande : $ time php myscript.php
+ Utiliser la classe de Benchmark de PEAR
+ Utiliser microtime() en début et fin de scripts
+ Utiliser ab, l'outil de benchmark d'Apache
+ Utiliser http_load
------------------------------------------------------------
http://dev.nexen.net/news/gen.php3/2004/03/11/2751,0,1,0,0.php3
[12] Créer des fichiers XUL en PHP [ Haut ]
------------------------------------------------------------
Stephan Schmidt publie une classe PEAR pour générer des
documents XUL. XUL est le langage de description des
interfaces de Mozilla. Il est utilisé comme outil de
spécification des interfaces d'applications web.
L'outil de Stephan permet de générer des fichiers XUL
valides, sans avoir à comprendre la syntaxe XML de XUL.
------------------------------------------------------------
http://dev.nexen.net/news/gen.php3/2004/03/11/2750,0,1,0,0.php3
[13] Connecter PHP à Microsoft SQL 2000 [ Haut ]
------------------------------------------------------------
PHP se connecte à 21 bases de données différentes, y compris
celles d'éditeurs propriétaires comme Microsoft. Jean-Luc
David explique comment configurer son serveur pour accéder
à ce serveur de base de données via les fonctions ODBC
Unifié.
L'extension uodbc de PHP regroupe des fonctions capables
d'accéder à toutes les bases de données compatibles ODBC,
ou dont les API sont proches.
Les bases de données suivantes sont supportées par l'ODBC
unifié : Adabas D, IBM DB2, iODBC, Solid, et Sybase SQL
Anywhere.
------------------------------------------------------------
http://dev.nexen.net/news/gen.php3/2004/03/10/2749,0,1,0,0.php3
[14] Astuces MySQL [ Haut ]
------------------------------------------------------------
Vous connaissez les options G et -X de MySQL? Elles
permettent de modifier le format d'affichage des résultats
avec le client de ligne de commande MySQL : une colonne par
ligne, ou format XML. Voyez les exemples chez Russel.
------------------------------------------------------------
http://dev.nexen.net/news/gen.php3/2004/03/10/2748,0,1,0,0.php3
[15] Hébergeurs gratuits en PHP [ Haut ]
------------------------------------------------------------
Arnaud Gadal et Xavier Borderie ont analysé les offres
d'hébergement pour trouver la perle rare : un hébergement
PHP / MySQL gratuit, à activation en ligne. Ils ne sont pas
nombreux sur les rangs : LaPoste, Multimania et iFrance.
Les hébergeurs gratuits ont tendance à disparaitre
rapidement : disparition définitive ou reconversion en
hébergeurs traditionnels. La qualité de service est aussi un
problème classique.
Freesurf.fr,Free.fr, hebergement-gratuit.com et Serveur4u
proposent aussi des hébergements gratuits, mais l'ouverture
du compte ne se fait pas en ligne.
------------------------------------------------------------
http://dev.nexen.net/news/gen.php3/2004/03/10/2747,0,1,0,0.php3
[16] PHP 5 : entre stabilité et fonctionnalité [ Haut ]
------------------------------------------------------------
"Il y a des gens qui sont impatients de voir PHP
publié," dit George Schlossnagle "Mais d'autres
sont plus conservateurs et préfèrent le voir stable avant de
l'adopter." NewsFactor fait le point sur la
publication de PHP 5, qui a été repoussée pour assurer la
stabilité de la nouvelle plate-forme. Les nouvelles
fonctionnalités sont d’ores et déjà bien identifiées par la
communauté, vu l'épanouissement récent des frameworks
objets.
------------------------------------------------------------
http://dev.nexen.net/news/gen.php3/2004/03/09/2746,0,1,0,0.php3
[17] Check list de sécurité [ Haut ]
------------------------------------------------------------
Harry Fueck nous signale le Wiki Wact, dont une des pages
est consacrée à la sécurité PHP. Cette page recense les
attaques classiques en PHP (injections, obtentions
d'informations, attaques spécifiques...) ainsi qu'une
importante liste de liens sur la sécurité des applications
web en général. A garder sous le coude pour mieux dormir.
------------------------------------------------------------
http://dev.nexen.net/news/gen.php3/2004/03/09/2745,0,1,0,0.php3
[18] Relation classe tables SQL [ Haut ]
------------------------------------------------------------
Il est classique, en PHP, de faire une correspondance entre
une table de la base de donnée et une classe d'objets. La
relation est évidente : un objet sera sauvé directement
comme une ligne dans la base de données et la classe joue
son rôle d'interface entre le code PHP et le SQL.
Toutefois, les interdépendances des tables se répercutent
sur les classes, et cela complexifie grandement le schéma.
Voici une méthode pratique pour résoudre ce dilemme.
------------------------------------------------------------
http://dev.nexen.net/news/gen.php3/2004/03/09/2744,0,1,0,0.php3
[19] KCachegrind pour APD [ Haut ]
------------------------------------------------------------
KCachegrind améliore considérablement l'étude des logs de
profilage. George Schlossnagle vient d'ajouter le support
de KCachegrind à APD, un des profileurs PHP. KCachegrind
exploite un fichier de trace, généré durant l'exécution du
script, pour faire un rendu graphique de l'arbre d'appels.
Cela permet d'identifier facilement les coûts d'inclusions
de fonctions (les fonctions qui en appellent d'autres).
------------------------------------------------------------
http://dev.nexen.net/news/gen.php3/2004/03/09/2743,0,1,0,0.php3
[20] Résumé de la semaine de développement PHP [ Haut ]
------------------------------------------------------------
Le résumé de la semaine dernière est enfin paru
* NEW : Annexe migration
* TLK : Signature des méthodes héritées
* TLK : SimpleXML et les éléments et attributs de type
chaîne
* TLK : Correction de get_browser()
A très bientôt pour le résumé de cette semaine !
------------------------------------------------------------
didou (didou@keliglia.com)
http://dev.nexen.net/news/gen.php3/2004/03/08/2742,0,1,0,0.php3
[21] phpBB rapidement [ Haut ]
------------------------------------------------------------
"Si vous pensez avoir un forum sur votre site web, vous
n'avez pas besoin de tout refaire vous-même. phpBB, un
forum Open source, peut être installé facilement sur la
plupart des serveurs. Cet article vous montre comment le
faire correctement, du téléchargement à la personnalisation
de l'interface.
Pour utiliser ce tutoriel, vous n' avez pas besoin de
connaître PHP et un minimum de connaissances en bases de
données."
------------------------------------------------------------
http://dev.nexen.net/news/gen.php3/2004/03/08/2739,0,1,0,0.php3
[22] Outil de débogage : debug_backtrace() [ Haut ]
------------------------------------------------------------
debug_backtrace() est un complément de var_dump() : il donne
la liste des fonctions appelées sous forme de tableau, avec
la ligne d'appel et les arguments fournis. Vous pouvez donc
connaître l'origine des appels, et savoir facilement si
l'un des arguments est mal utilisé.
Tout comme var_dump(), la méthode reste rudimentaire, et
inopérante en cas d'erreur fatale. Mais contrairement à
xdebug, elle est installée partout, immédiatement. Autant
le savoir.
array(4) {
["file"] => string(10)
"/tmp/a.php"
["line"] => int(10)
["function"] => string(6)
"a_test"
["args"]=>
array(1) {
[0] => &string(3) "ami"
}
}
------------------------------------------------------------
http://dev.nexen.net/news/gen.php3/2004/03/08/2740,0,1,0,0.php3
[23] L'alternative Open Source [ Haut ]
------------------------------------------------------------
"[Le ministre du commerce autralien] admettait que son
gouvernement a été un "acheteur aveugle de technologies
de l'informations depuis longtemps"].
Pour moi, et je l'ai dit à la conférence, tous les niveaux
de gouvernements devraient étudier les alternatives, et
considérer les possibilités Open Source, car elles ont le
potentiel de créer des emplois locaux, et réduire le
déficit de la balance commerciale."
L'Open Source réduit la dépendance des pays à la
technologie étrangère et génère des emplois capables de
garder au pays des spécialistes convoités. Pour de nombreux
sans industrie de l'information forte, c'est une solution
de développement durable.
------------------------------------------------------------
http://dev.nexen.net/news/gen.php3/2004/03/08/2741,0,1,0,0.php3
[24] phpsqliteadmin 0.2 [ Haut ]
------------------------------------------------------------
phpSQLiteAdmin est une interface web d'administration des
bases SQLite. Actuellement, les opérations suivantes sont
supportées :
+ Création, effacement et vidange d'une base.
+ Affichage des informations de bases
+ Création, navigation et effacement des tables.
+ Affichage des informations de tables.
+ Exécution de requêtes SQL
phpsqliteadmin sera véritablement opérationnel avec l'arrivée
de PHP5.
A noter aussi sqlitemanager, une autre interface.
------------------------------------------------------------
http://dev.nexen.net/news/gen.php3/2004/03/07/2737,0,1,0,0.php3
***************************************************************
La lettre hebdo est relue par Pascal Bédard.
***************************************************************
Pour modifier votre abonnement :
http://www.nexen.net/services/login.php?direction=diffusion.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/
Contact de l'éditeur
damien.seguy@nexen.net
***************************************************************
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

