Le cahier du programmeur PHP 5 reprend le moto de la collection avec une découverte de PHP portée par le développement d'une application de A à Z.
Un petit rappel de PHP est prévu, mais l'objectif est vraiment de mettre l'accent sur les nouveauté de PHP5 notamment en terme de programmation objet, de design pattern et d'utilisation d'XML, d'AJAX.
La base de données utilisée est SQLite avec PDO.
Vous pouvez télécharger :
- quelques errata,
- le code source de phpsaloon (zip ou tgz),
- le modèle de données de phpsaloon,
- des extraits du livre (table des matières, l'avant propos et les annexes a, b, c, d).
Books





Bonjour,
je rencontre egalement des soucis pour extraire les fichiers TAR, quelqu’un a t’il une solution fiable
merci
Graphiste web devenu développeur, je suis tombé en amour pour PHP. Mais il me semblait ne pas pouvoir aller plus loin que le niveau débutant et je me suis procuré votre livre que je ne peux plus lacher depuis 2 jours. J’adore particulièrement l’approche directe vers des notions d’intérêt et la mise en page du livre. On aurait dit que le livre avait été écrit juste pour moi. Merci !
Je me heurte également au même problème :
-j’ai téléchargé sans difficulté les fichiers phpsaloon.tar et phpsaloon-rc2.tar
-mais il m’est impossible de les ouvrir (avec winzip sous Windows XP)
Est-ce que ces archives ne peuvent être ouvertes que sous Linux ??
Si quelqu’un dispose de ces sources sous forme lisibles sous windows,pourrait-il me l’envoyer par email ?
Merci de votre conseil et aide éventuelle,
est ce qu’il y a quelqu’un pour m’aider
bonjour tous
mon probleme est le suivant:
en fait j’ai ecris une classe sous PHP 5 qui est la classe identification :
<?
class identification extends controleurbase
{
function __construct()
{
/*
initialisation du document DOM */
parent::__construct();
/*
chargement du XML */
/*
connexion a la base abeille_amcd avec le login NOM et le Mot De Passe
PASSE sur le SERVEUR Satie qui a l’adresse IP 192.168.8.11 */
$bd = new BDMySQL (NOM, PASSE, BASE, SERVEUR);
$this->load($_SERVER[DOCUMENT_ROOT].’/abeille/web/xml_identification/identification.xml’);
/*
construction du context XPath */
$xpath = new domXPath($this);
if($this->form)
{
header(‘Location: /site.php’);
exit(0);
}
/*
$this->insertMessage(’/abeillemusique/formulaire’,‘Votre connexion a échoué. Merci de réessayer ultérieurement.’); */
//echo“test”;
}
}
?>
mon probleme est le suivant en fait qu’on je valide mon formulaire normalement ma classe doit me rediriger vers la page site.php du fait que j’ai valide le formulaire $this->form en fait la variable $this->form on lui affecte normalement la variable $_POST[‘form’] dans une methode qui appartient a la classe controleurbase mais malheureusement l’affectation ne se fait pas est ce quelqu’un a une idée pour m’aidée a avancée merci a toutes et a tous ZAKARIAE [/code]
j’ai un probleme dans la classe identification en fait dans le livre ils disent que lorsqu’on valide le champ Nom de code et Mot de passe le script va chercher si le formulaire est valide dans ce cas la il va executer la boucle
if($this->form) { header(‘Location: le nom du script ou il doit brancher’); exit(0); }
dans mon cas ca marche pas du tou est ce que quelqu’un a un solution.
merci ZAKARIAE
PHPSaloon ne marche pas du tout j’ai une page blanche chez moi que dois-je faire ?
J’ai tout installer sur mon servur, je peux tout faire tourner dessu ! (enfin les langages les plus connus)
Merci,
Nemuria
Bonjour, je vois que je ne suis pas le seul à avoir rencontré des messages d’erreur sur sqlite_db et XSLTProcessor. Voici comment que je les ai résolues (sur macOSX, mais le principe doit être le même sur les autres versions d’unix-like).
1) sqlite_db. J’ai remplacé l’objet “sqlite_db” par “$db = new SQLiteDatabase(‘test’)”. Il y aussi d’autres objets/méthodes à modifier, comme “single_query” par “query”, “array_query” par “arrayQuery”, “last_insert_rowid()” par “lastInsertRowid()”.
2) XSLTProcessor. Il faut installer les libraires libxml2 et libxslt. (la compilation prend une éternité, vous avez le temps de boire un café). Instruction standard de compilation : ./configure, make, sudo make install, sudo ranlib /usr/local/lib/nomDeDaLibrairie.a. Ensuite, vous pouvez recompiler php avec le chemin de ces librairies : —with-libxml-dir=/usr/local —with-xsl=/usr/local (toujours sur macosx).
Bon courrage.
Je viens de trouver tout seul pour le message d’erreur mais je vois quie le code est totalement à reprendre non pas que c’est mal codé au contraire mais le codage sqlite à vachement évolué, même en prenant les sources RC2 de phpSaloon.
Il y aura-t’il une nouvelle version en téléchargement ?
Mon premier pb sur comment attaquer en commande sqlite est toujours d’actualité ;)
Merci par avance :)
Bonjour à tous :)
J’ai acheté le bouquin que je trouve assez interessant. Malheureusement, je me heurte à 2 pb. Le premier est le message d’erreur “Class sqlite_db Not Found” et le second est que je ne trouve pas comment attaquer en ligne de commande comme dans le bouquin sqlite.
Merci par avance ;)
Cordialement,
Stéphane
très bonne nouvelle en cette nouvelle année 2005 !
j’espère que ce forum continuera d’exister car lorsque phpsaloon sera dispo, il risque d’y avoir des questions
en tout cas merci pour l’info
Mickael
Il devrait y avoir du nouveau sous peu, avec une refonte globale du site et l’intégration de PHP Saloon.
moi qui attendait avec impatience de voir tourner l’application phpsaloon sur phpsaloon.com, je terriblerment déçu …
le site mariel.fr ne semble plus être mis à jour !!!
c’est dommage quand j’ai acheté le livre ça partait bien …
Ca va
j’ai trouvé pour les autres
il faut décocher la ligne
extension=php_xsl.dll
dans php.ini
du moins avec Windows
j’ai installé Wamp sur ma machine (windowsXP)
En testant le site ,j’ai une erreur du type
Class ‘xsltprocessor’ not found
dois-je modifier php.ini ?
d’après les articles,
quelqu’un a déjà eu le même problème.
merci pour la réponse
HP
C’est vrai. Impossible de mettre en route l’appli pour des vues XUL. Il manque quelques fichiers dans l’archive. Ou alors le fichier identification.xsl n’est pas le bon …
Merci de répondre à nos deux posts Mr Mariel. Votre livre est vraiment un modèle du genre !
c’est bien beau tout ça mais ça fait des mois que votre site phpsaloon.com indique que “dans quelques jours” on verra son ouverture avec la prise en charge de PHP 5 par votre hébergeur, mais toujours rien.
On aimerait bien voir fonctionner votre code en ligne “pour de vrai”.
21-12-2004
Excellent bouquin…
Je ne dirais que merci et de continuer dans cette voie.
bonjour
bravo pour cette petite appli d’apprentissage PHP5,elle marche pas mal mais j’ai voulu tester la version xul mozilla et là il manque apparemment des fichiers xsl dans la distrib.sous
phpsaloon/style/xul/
pourrais je les récupérer pour tester?
je n’ai pas pris connaissance de l’appli mais il semblerai que l’erreur provient de la config du navigateur , voir dans outil > optioninternet > sécurité , c’est a ce niveau qu’il faut faire des modif
bonjour apres achat de votre livre j’ai donc monter apache et php5 pour tester cette application .
Lors du lancement de celle ci via site.xul un message js m’informe que le niveau de securité en vigeur ne me permet pas de faire fonctionner phpsaloon.
>a quel niveau ma config n’est pas correcte ?
>a quel chapitre je dois me référé pour regler ce probleme ?
je suis sous windows …
Merci d’avance
_;Je viens de resoudre mon probleme avec xsltprocessor mais j’ai encore d’autres difficultés :
Warning: SQLiteDatabase::query() [function.query]: attempt to write a readonly database in /var/www/phpsaloon/inc/utilisateur.php on line 27
Fatal error: Call to undefined method SQLiteDatabase::last_error() in /var/www/phpsaloon/inscription.php on line 58
De plus j’ai du modifié egalement tous les appels du type sqlite_db car il semble que l’archive contenant le code pour la rc2 soit en fait le meme que pour la rc1 (?)
J’ai le meme probleme avec xsltprocessor et je ne sais pas comment faire pour activer le support xslt dans php5 sous linux. J’ai compilé php avec —enable-xslt mais cela n’apparait pas ensuite dans mon phpinfo.
j’ai php5 rc2 et phpsaloon plante.
il me dit qu’il ne connait pas a classe XSLTProcessor qui a une idée
Bon, j’ai un problème d’accolade dans le session.php…
je komprend pa…
Bonjour,
Je connais PHP et XML depuis quelques années et je trouve que votre bouquin sur PHP 5 est très bon en ce qui concerne la méthodologie et l’approche globale d’une solution durable.
Je trouve que cela manquait souvent dans les divers bouquins que j’ai pu lire sur ces technlogies.
Je regrette juste la complexité pour suivre les liens entre les différents codes qui servent à produire le site concrètement.
Je le recommande à mes collègues et amis et nous attendons avec impatience l’accès à PHPSaloon.
Bonjour,
suite à l’achat du cahier des programmeurs php5 (achat que je recommande : très bon point de départ pratique) je me suis acheté une bible PHP5 : “PHP5 avancé” (que je trouve très didactique)
mais voilà : dans le cahier de prog, on ouvre une connexion SQLite avec SQLiteDatabase() alors que dans PHP 5 avancé une connexion est ouverte avec SQLite_open() ; (la commande SQLiteDatabase() n’est mentionnée nul part)
est que quelqu’un connait la différence entre ces deux commandes pour m’expliquer !!!
même en ayant chercher sur le net, je n’ai pas trouvé d’infos pertinentes à ce sujet!
merci d’avance
Mickaël
Merci de votre réactivité !
et encore félicitations pour ce cahier des programmeurs très bien conçu
Mickael
Bonjour Mickael!
Non pas de probleme, en fait l‘équipe PHP a poursuivi son uniformisation des noms au niveau de l’interface Sqlite dans la version finale de PHP 5.
En gros tous les noms de fonctions comme array_query deviennent arrayQuery. Dans votre cas last_insert_rowid() est devenu lastInsertRowid().
Rien de bien méchant. Je pense poster une mise à jour début septembre avec tout cela. Pour le moment je travaille à faire marcher l’ensemble sur www.phpsaloon.com malgré quelques contraintes d’hébergement :(
en voulant tester phpsaloon j’ai le message :
Fatal error: Call to undefined method SQLiteDatabase::last_insert_rowid() in c:\blabla\...\phpsaloon\inc\utilisateur.php on line 29
est du à une extension que je n’aurai pas activée ?
Mickael
L’erreur vient de moi, je n’avais pas activé le support xslt sous win32
Sorry
Bonjour,
J’ai eu qques erreurs dans le code source.
1) gestionnairesqlite.php => Lire le fichier PDF avec les errata pour modifier les appels de méthode incorrect (2 lignes modifiées) => Fix
2) identification.php
Fatal error: Class ‘xsltprocessor’ not found in c:\www\inc\vue.php on line 6
=> Not Fix
J’ai essayé de remplacer xsltprocessor par xsltProcessor sans succés.
—
Patrick
Bonjour,
Je suis arrivé à extraire les archives sans pb.
J’ai fait juste une petite modif.
Dans le rep : /xml/ j’ai supprimmé le fichier .identification.xml.swp qui locké le fichier.
—
Patrick
Vous ne devriez plus attendre longtemps. Ovh a en effet basculé ses serveurs sur la release officielle de PHP 5.
Bonjour, cela commence a etre long, tres long, qd est-ce que la démo sera en ligne sur phpsaloon.com ?
Amicalement.
oui c’es vrai qu’il y a des problèmes à l’extraction sur ces deux fichiers : dommage. J’aimerai bien testé PHP saloon en vrai.
En tout cas, félicitations pour ce cahier des programmeurs.
très bien conçu,même pour le débutant-confirmé que je suis.
on attends la version corrigée !
Sans aller jusque là, je trouve votre livre vraiement intéressant. J’apprécie l’approche qu’il fait de php5 mais également le fait qu’il s’appuie sur le developpement d’une application de A à Z (On peut ainsi voir un cas concrêt).
On y apprend beaucoup sur les standards et technologies que sont XML, DOM, DTD, XSL et autres ainsi que sur la façon de les mettres en place concrètement.
Mon passage au php5 marquera la fin de mes scripts post-paléolitique… et vera le jour (j’espère dans le courrant de l’année prochaine) de deux projets en cours qui sont GMS et IMS (2 sortes de CMS basés pour le premier sur la gestion d’un clan de jeux et pour le second sur la gestion d’images)
Merci pour ce livre.
bonjour,
Merci pour le code PHP Saloon mais les archives posent problème à l’extraction sur les fichiers XUL.
Frédéric Barbier
Chambéry
C’est un très bon bouquin !
En fait, il va au-delà de PHP, et c’est ça qui est intéressant. C’est un ouvrage très général (bien que ciblé), qui pourrait presque convenir à un débutant.
Il vous faut donc une bible :) Un grand nombre d’ouvrages sont déjà sortis dans cette catégorie, mais je vous conseille vivement de jeter un oeil à la date de publication. Nombre d‘éléments ont été sensiblement revus jusqu‘à récemment et vous risqueriez de grosses déceptions sans cette précaution.
Vous l’avez compris je suis un grand partisan du manuel PHP en ligne quand on commence à parler exhaustivité, mais hélas pour le moment la documentation est encore en retrait aussi je pense à l’ouvrage de Cyril Pierre de Geyer, lui aussi auteur chez Eyrolles, dont l’ouvrage doit sortir sous peu.
Il s’agit naturellement d’un profil de livre complètement différent comparé au cahier du programmeur.
Bonjour, je viens de faire l’acquisition de votre livre (par ailleurs excellent et clair) et voudrai approfondir maintenant l’aspect création et utilisation des objets en php5, pouvez-vous me conseiller un ou des articles / livres axés sur ce sujet ?
Bien à vous.
Le code en lui même est disponible, hélas les hébergeurs offrant PHP 5 sont encore rares.
Pour le moment l’extension XSLT n’est pas activée chez OVH qui héberge ce site…
Ils devraient passer en RC2 ou 3 sous peu et rectifier la chose.
A défaut je tenterai un hébergement différent.
Bonjour,
qu’en est-il du site phpsaloon.com, concernant l’exemple détaillé du livre ?