Forum PHPBoost
• Développement des modules » Mises a jour mise a jour des table sql ?
1 2 3 »
J'ai procéder a la modification du module download, pour ce faire j'ai eu besoin de rajouter 2entrée dans la table download.
lors du transfert, en mise a jour, malgré l'upgrade du n° de version, je n'ai pas d'upgrade de la table sql.
dans le dossier db/french j'ai bien modifier le fichier download.mysql.sql mais la bd ne se met pas a jour.
il n'y a pas un moyen de faire faire la maj automatiquement ?¿ sans passer par l'ajout d'une ligne de code pour altéré la base de donnée ?
ou il faut faire un fichier update.sql ? qui contient les info d'altération de la table ?¿
lors du transfert, en mise a jour, malgré l'upgrade du n° de version, je n'ai pas d'upgrade de la table sql.
dans le dossier db/french j'ai bien modifier le fichier download.mysql.sql mais la bd ne se met pas a jour.
il n'y a pas un moyen de faire faire la maj automatiquement ?¿ sans passer par l'ajout d'une ligne de code pour altéré la base de donnée ?
ou il faut faire un fichier update.sql ? qui contient les info d'altération de la table ?¿
A part supprimer et reinstaller ou passer par la gestion de mise a jour des modules, non.
c'est justement la question...
la mise a jour de module ne peut pas savoir que on fait une modif en table sql si on lui dit pas.
la question poser autrement c'est comment ?¿
la mise a jour de module ne peut pas savoir que on fait une modif en table sql si on lui dit pas.
la question poser autrement c'est comment ?¿
personne n'a d'idée ?¿
Il n'est pas possible de détecter ce type de changement manuel du fichier .sql
Il faut donc réinstaller le module ou faire la modification à la main.
J'ai cependant une question, qu'est-ce qui a changé?
Est-ce que dans une mise à jour on a modifié un fichier sql sans fournir un moyen de répercuter ces changements ou est-ce que tu pensais qu'en faisant une mise à jour d'une version de PHPBoost 3.0.x vers 3.0.x+1 les changements que tu as effectué se serait répercuté dans la base de données?
Il faut donc réinstaller le module ou faire la modification à la main.
J'ai cependant une question, qu'est-ce qui a changé?
Est-ce que dans une mise à jour on a modifié un fichier sql sans fournir un moyen de répercuter ces changements ou est-ce que tu pensais qu'en faisant une mise à jour d'une version de PHPBoost 3.0.x vers 3.0.x+1 les changements que tu as effectué se serait répercuté dans la base de données?
non c'est juste que j'ai fait les modif que swan voulait pour download.
en somme la possibilité de passer le lien dl ou un lien personnaliser.
( a faire la modif pour le double affichage vignette ou 'normal' j'ai pousser un peu
)
il m'a donc fallut un endroit pour stoker les info, c'est pour cela que j'ai modifier la table sql.
mais cela m'interesse aussi pour le module match, on en a repris le développement, et au cas ou je voudrais connaitre les limites des maj de module.
Le maintien du module suerbar aussi pourrait se voir mettre a jour un jour, et a ce jour il n'a pas de table, dans son cas si j'en ajoute une il faudra donc refaire une instal du module si j'ai bien compris ? lors de la maj d'un module sans table, si on en ajoute une la maj ne le détectera pas ?
a 1ere vu du fichier de maj_module sa devrais le prendre non ?¿
en somme la possibilité de passer le lien dl ou un lien personnaliser.
( a faire la modif pour le double affichage vignette ou 'normal' j'ai pousser un peu
)il m'a donc fallut un endroit pour stoker les info, c'est pour cela que j'ai modifier la table sql.
mais cela m'interesse aussi pour le module match, on en a repris le développement, et au cas ou je voudrais connaitre les limites des maj de module.
Le maintien du module suerbar aussi pourrait se voir mettre a jour un jour, et a ce jour il n'a pas de table, dans son cas si j'en ajoute une il faudra donc refaire une instal du module si j'ai bien compris ? lors de la maj d'un module sans table, si on en ajoute une la maj ne le détectera pas ?
a 1ere vu du fichier de maj_module sa devrais le prendre non ?¿
Dans l'admin, il y a une page qui permet de mettre à jour un module.
Pour cela la mise à jour doit se présenter sous la forme d'un zip contenant un dossier du nom du module avec ses nouveaux fichiers à l'intérieur et un fichier php spécial qui sera utilisé pour exécuter un script de mise à jour.
http://code.google.com/p/phpboost/source/browse/branches/3.0/admin/admin_modules_update.php#69
Ici, on voit que l'on parcours les dossiers /module/db/$language/ ) à la recherche des fichiers php et sql "mysql_NvNbVersion.php" ou .sql
NvNbVersion doit être supérieur au numéro de version du module avant update. Ce n'est pas top comme mode de fonctionnement, mais la nouvelle version devrait permettre de faire quelque chose d'un peu plus structuré.
Voilà, j'espère que ça fonctionne parce que je ne sais pas si cette fonctionnalité à été déjà été utilisée et donc testée.
Bonne journée
Pour cela la mise à jour doit se présenter sous la forme d'un zip contenant un dossier du nom du module avec ses nouveaux fichiers à l'intérieur et un fichier php spécial qui sera utilisé pour exécuter un script de mise à jour.
http://code.google.com/p/phpboost/source/browse/branches/3.0/admin/admin_modules_update.php#69
Ici, on voit que l'on parcours les dossiers /module/db/$language/ ) à la recherche des fichiers php et sql "mysql_NvNbVersion.php" ou .sql
NvNbVersion doit être supérieur au numéro de version du module avant update. Ce n'est pas top comme mode de fonctionnement, mais la nouvelle version devrait permettre de faire quelque chose d'un peu plus structuré.
Voilà, j'espère que ça fonctionne parce que je ne sais pas si cette fonctionnalité à été déjà été utilisée et donc testée.
Bonne journée
heu oui, mais l'update par cette methode ne fonctionne pas.
le fichier .sql bien qu'il ai été mis a jour n'est pas pris en compte.
je suis passer en manuel pour la modif, c'est pas insurmontable, mais peu fonctionnel.
mon nouveau fichier : mon_module.mysql.sql a le meme nom que le précédant, j'ai pas fais le test de modifier le nom de fichier.
donc dans mon cas ce devrais etre mon_module.mysql_1.sql pour que l'altération de la db soit faite ?
sa aurais été plus simple de mettre dans l'archive un update.mysql.sql avec juste les alteration de la db non ?¿
le nouveau fichier sql avec les modif faite aussi comme je l'ai fait par erreur.
toute la problématique résulte dans l'exécution du fichier update, et une seule fois (sous risque d'erreur).
enfin c'est une idée. je vais tester des que peut cette methode ( mon_module.mysql_1.sql )
merci
le fichier .sql bien qu'il ai été mis a jour n'est pas pris en compte.
je suis passer en manuel pour la modif, c'est pas insurmontable, mais peu fonctionnel.
mon nouveau fichier : mon_module.mysql.sql a le meme nom que le précédant, j'ai pas fais le test de modifier le nom de fichier.
donc dans mon cas ce devrais etre mon_module.mysql_1.sql pour que l'altération de la db soit faite ?
sa aurais été plus simple de mettre dans l'archive un update.mysql.sql avec juste les alteration de la db non ?¿
le nouveau fichier sql avec les modif faite aussi comme je l'ai fait par erreur.
toute la problématique résulte dans l'exécution du fichier update, et une seule fois (sous risque d'erreur).
enfin c'est une idée. je vais tester des que peut cette methode ( mon_module.mysql_1.sql )
merci
SaTurNin:
Quelque chose qui ne comporte qu'un seul "_" avant le numéro de version, qui contient mysql dans son nom.
par exemple forum.mysql_3.1.sql
ce fichier ne doit contenir que les ALTER par rapport à la version précédente
donc dans mon cas ce devrais etre mon_module.mysql_1.sql pour que l'altération de la db soit faite ?
Quelque chose qui ne comporte qu'un seul "_" avant le numéro de version, qui contient mysql dans son nom.
par exemple forum.mysql_3.1.sql
ce fichier ne doit contenir que les ALTER par rapport à la version précédente
et ce sera ajouter automatiquement a celui de l'ancienne version ?¿
(toujours po tester
)
(toujours po tester
)
Exemple tu as un module a en version 1
il a son fichier de base de données.
en version 2 il aura toujours son fichier de base de données contenant la définition des tables pour la version 2 et non pas la version 1 (en général c'est le contenu de la version 1 avec quelques champs ou tables en plus)
Il aura également le fichier dont je t'ai parlé qui lui ne contient que les ordres sql permettant de passer du fichier de base de données de la version à celui de la version 2.
Lors d'une installation c'est le fichier de base de données du module qui est utilisé.
Lors d'une mise à jour, c'est celui dont j'ai parlé dans mon post précédent.
il a son fichier de base de données.
en version 2 il aura toujours son fichier de base de données contenant la définition des tables pour la version 2 et non pas la version 1 (en général c'est le contenu de la version 1 avec quelques champs ou tables en plus)
Il aura également le fichier dont je t'ai parlé qui lui ne contient que les ordres sql permettant de passer du fichier de base de données de la version à celui de la version 2.
Lors d'une installation c'est le fichier de base de données du module qui est utilisé.
Lors d'une mise à jour, c'est celui dont j'ai parlé dans mon post précédent.
ok merci pour ces explications 
je testerais sa ce week end

je testerais sa ce week end
heu dans le cas ou sa fonctionne sans aucun souci je pense que ce type d'info a sa place dans la doc non, soit en dev de module, soit sur le famework non ?
Éventuellement, mais concernant le développement, la doc est tellement pauvre qu'on a des notions bien plus importantes qui ne sont pas abordées.
Le problème c'est encore une fois le temps. En plus, la doc de développement, il n'y a vraiment que nous qui puissions nous en charger.
Le problème c'est encore une fois le temps. En plus, la doc de développement, il n'y a vraiment que nous qui puissions nous en charger.
____________________
Un problème, une question ? Cherchez dans la FAQ ou la documentation. Si vous ne trouvez pas la réponse, demandez du support sur le forum.
Bjarne Stroustrup, inventeur du C++:
Un problème, une question ? Cherchez dans la FAQ ou la documentation. Si vous ne trouvez pas la réponse, demandez du support sur le forum.
Bjarne Stroustrup, inventeur du C++:
"There are two ways to write error-free programs; only the third works."
J'ai encore une question, mais cette fois elle concerne le cache.
Pour ce qui est de la mise a jour de la db, pas de souci c'est fonctionnel.
Par contre les tpl qui sont dans le dossier cache, et vu que on les a modifier pour y ajouter certaines fonctionnalité en rapport avec les modifications de db, ils ne sont pas régénère automatiquement.
Pourtant ligne 97 ici le cache est sensé être généré. mais il semblerais qu'il ne soit pas écraser ?¿
Mes chmod sont correct, et au début j'avais crue a un souci de wamp, enfin surtout de win et des droit qui ne sont pas type unix, mais l'utilisateur de wamp avais les droit admin sur le dossier donc ce n'est pas sa non plus.
A part faire une suppression du cache a la main je voit pas comment faire.
Meme l'option régénération du cache ne règle pas le souci.
merci
Pour ce qui est de la mise a jour de la db, pas de souci c'est fonctionnel.
Par contre les tpl qui sont dans le dossier cache, et vu que on les a modifier pour y ajouter certaines fonctionnalité en rapport avec les modifications de db, ils ne sont pas régénère automatiquement.
Pourtant ligne 97 ici le cache est sensé être généré. mais il semblerais qu'il ne soit pas écraser ?¿
Mes chmod sont correct, et au début j'avais crue a un souci de wamp, enfin surtout de win et des droit qui ne sont pas type unix, mais l'utilisateur de wamp avais les droit admin sur le dossier donc ce n'est pas sa non plus.
A part faire une suppression du cache a la main je voit pas comment faire.
Meme l'option régénération du cache ne règle pas le souci.
merci
• Développement des modules » Mises a jour mise a jour des table sql ?
1 2 3 »
1 Utilisateur en ligne :: 0 Administrateur, 0 Modérateur, 0 Membre et 1 Visiteur
Utilisateur en ligne: Aucun membre connecté
Utilisateur en ligne: Aucun membre connecté
Répondre
Vous n'êtes pas autorisé à écrire dans cette catégorie





PHPBoost

Support
Téléchargements
Développement
Communauté











