Le carnet de bord du webmaster
Passez votre chemin c'est mes notes ici...
31 | 19 | 8 | 20 | 6 | 32 | 10 | 11 | 21 | 34 | 16 | 9 | 36 | 17 | 30 | 18 | 28 | 29 | 7 | 27 | 25 | 22 | 13 | 15 | 37 | 12 | 23 | 26 | 24 | 35 | 33
**** 10-06-2010
08h01 sysadmin 10h34 : une des grosses raisons qui m'a poussé à refaire le formulaire, au-delà d'une automatisation plus maîtrisée, et de corriger la partie validation, I need une extraction automatique des variables après leur validation, ce qui me permet d'utiliser directement les variables dans la requête sql, sans avoir à les récupérer de POST manuellement. 10h38 : également une autre raison est la lenteur du insert, vu que pour compléter automatiquement les champs manquants lors du insert, mon objet actuel fait une requête sur la table pour connaître le nom des champs, leur types, et ainsi assigne automatiquement des valeurs par défaut. Ce n'est pas mauvais, mais je préfère ne pas utiliser cela et définir tous les champs de la requête. L'objet Kif_Sql_Basic est le même que l'objet Ling_Sql_Basic, mais sans la complétion automatque au niveau de l'insert. musique 14h06 : ajout d'un élément au système de listes : le formlink : un lien vers le formulaire associé à la liste. 21h39 : ma liste et mon formulaire me semblent prêts. Nous allons donc passer à la phase la plus intéressante : la construction de l'esclave (dans le sens celui qui travaille). Tout d'abord, l'escalve doit savoir lire et décrypter les infos d'une base de données, il aura donc à sa disposition des outils que je lui aurai construits. En fait, je les ai déjà construits, mais je vais peut être en refaire une partie, ou tout, suivant si ils sont simples à utiliser ou pas. Commencçons par un truc simple : une table sans piège aucun, des champs plats, pas de foreign key. Histoire de voir la stratégie générale. L'escalve aura sa bibliothèque dédiée dans laquelle il travaillera. Ainsi, je pourrais utiliser directement les sources de l'esclave, ou bien les copier pour les dériver à des fins plus personnelles. Les sources de l'esclave seront cohérentes avec elles-même de telle sorte qu'elles fonctionneront sans que j'ai à changer le moindre caractère. Mon esclave s'appelle stos, il y aura un dossier stos qui contiendra mainly 2 sous-dossiers : formhandler listhandler dans chacun de ces dossiers on trouvera des sous-dossiers portant les noms des tables de la base de données de l'application. Peut être devrais-je les grouper par base de données ? Et chaque dossier se nommant comme une table contindra un fichier qui s'appellera soit formhandler.php soit lishandler.php Le brief de base est assez clair. Comme stos est un slave, il possède un mental qui contient toutes les infos nécessaires, le plan de construciton, la config quoi. stos utilise son mental pour arriver à ses fins. Voyons, Stos créé des formhandler et listhandler qui sont des objets du kif, il peut donc lui même être rangé dans la librairie kif. Créons un dossier slave qui contiendra Stos. Voyons maintenant ce dont j'ai besoin pour créer un form et une list pour le form : le nom de la bdd nom de la table le lien vers la liste le nom des champs le type des champs c'est tout dans le cadre de cette utilisation basique. pour la list le nom de la bdd nom de la table le lien vers le formulaire le lien vers la liste (ssi $_SERVER['REDIRECT_URL'] ne fonctionne pas en prod) le nom des champs c'est tout pour cette utilisation basique, ça fait un peu pitié mais bon faut bien commencer quelque part. On peut donc imaginer grosso modo 2 méthodes principales : generateForm et generateList generateForm jonglera avec les propriétés suivantes $databaseName $tableName $listLink $aFieldNames $aFieldTypes on regroupera plutôt les 2 dernières dans un seul tableau $aFieldInfos=array( name => blabla, type => int, ... ) Le but est donc de trouver ces infos, je propose bêtement une méthode qui s'appelle prepareInfosFromTable(); Au départ, on lui donne quand même le bdd et le tablename... Pour le list link, c'est une convention du kif, et justement stos ests un esclave du kif, donc il est au courant , et même responsable de l'organisation des formulaires qu'il génère pour la table town de la bdd kiftest le chemin du formulaire sera : /stos/formhandler/kiftest/town/formhandler.php et du coup celui de la liste sera /stos/listhandler/kiftest/town/listhandler.php 00h06 : la création du formulaire basique a réussi. 2,3 corrections minimes à apporter cependant. Passons maintenant à la génération de la liste basique 00h39 ok pour la liste basique. Par contre je n'aime pas trop l'ergonomie, j'aurais voulu passer du formulaire à la liste en un simple clic sur un onglet.`Je verrais ça demain. Si j'arrive à finir : l'ergonomie, les formulaires et listes complexes, et l'automatic upload, ca sera vraiment bien.