Annonces
Livre d'or

Par koopa'z

Bien que j'ai pas toute les fonctionnalités, phpboost est canon !

Livre d'or

Mini sondage
Etes-vous satisfait du support PHPBoost ?










Résultats

 
RssDéveloppement des modules » Mises a jour mise a jour des table sql ?  1  2  3  »
   Le 19/09/10 à 12h52 Citer      

Booster Missile

Groupe: Membre

Inscrit le: 22/04/08
Messages: 1420
Lieu: Derrière le cla...
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 ?¿
____________________
!! Accroche toi a la console, je retire le shell !!

pm http://chez-swan.net    
   Le 19/09/10 à 13h46 Citer      

Administrateur

Chef de projet
Développement Noyau

Sexe:
Inscrit le: 27/02/09
Messages: 7980
Lieu: Alsace
A part supprimer et reinstaller ou passer par la gestion de mise a jour des modules, non.

pm http://www.phpboost.com    
   Le 19/09/10 à 14h42 Citer      

Booster Missile

Groupe: Membre

Inscrit le: 22/04/08
Messages: 1420
Lieu: Derrière le cla...
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 ?¿
____________________
!! Accroche toi a la console, je retire le shell !!

pm http://chez-swan.net    
   Le 20/09/10 à 08h52 Citer      

Booster Missile

Groupe: Membre

Inscrit le: 22/04/08
Messages: 1420
Lieu: Derrière le cla...
personne n'a d'idée ?¿
____________________
!! Accroche toi a la console, je retire le shell !!

pm http://chez-swan.net    
   Le 20/09/10 à 12h51 Citer      

Administrateur

Equipe historique

Sexe:
Inscrit le: 31/12/07
Messages: 2267
Lieu: Lyon
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?
____________________
Soyez polis, pas de langage SMS et soignez votre orthographe, merci.

pm horn@phpboost.com http://www.phpboost.com    
   Le 20/09/10 à 20h46 Citer      

Booster Missile

Groupe: Membre

Inscrit le: 22/04/08
Messages: 1420
Lieu: Derrière le cla...
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 :p )

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 ?¿

____________________
!! Accroche toi a la console, je retire le shell !!

pm http://chez-swan.net    
   Le 21/09/10 à 08h40 Citer      

Administrateur

Equipe historique

Sexe:
Inscrit le: 31/12/07
Messages: 2267
Lieu: Lyon
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
____________________
Soyez polis, pas de langage SMS et soignez votre orthographe, merci.

pm horn@phpboost.com http://www.phpboost.com    
   Le 21/09/10 à 11h09 Citer      

Booster Missile

Groupe: Membre

Inscrit le: 22/04/08
Messages: 1420
Lieu: Derrière le cla...
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 :)
____________________
!! Accroche toi a la console, je retire le shell !!

pm http://chez-swan.net    
   Le 21/09/10 à 11h20 Citer      

Administrateur

Equipe historique

Sexe:
Inscrit le: 31/12/07
Messages: 2267
Lieu: Lyon
SaTurNin:
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
____________________
Soyez polis, pas de langage SMS et soignez votre orthographe, merci.

pm horn@phpboost.com http://www.phpboost.com    
   Le 21/09/10 à 11h22 Citer      

Booster Missile

Groupe: Membre

Inscrit le: 22/04/08
Messages: 1420
Lieu: Derrière le cla...
et ce sera ajouter automatiquement a celui de l'ancienne version ?¿
(toujours po tester :p )
____________________
!! Accroche toi a la console, je retire le shell !!

pm http://chez-swan.net    
   Le 21/09/10 à 12h43 Citer      

Administrateur

Equipe historique

Sexe:
Inscrit le: 31/12/07
Messages: 2267
Lieu: Lyon
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.
____________________
Soyez polis, pas de langage SMS et soignez votre orthographe, merci.

pm horn@phpboost.com http://www.phpboost.com    
   Le 21/09/10 à 21h09 Citer      

Booster Missile

Groupe: Membre

Inscrit le: 22/04/08
Messages: 1420
Lieu: Derrière le cla...
ok merci pour ces explications :)

je testerais sa ce week end :)
____________________
!! Accroche toi a la console, je retire le shell !!

pm http://chez-swan.net    
   Le 22/09/10 à 11h40 Citer      

Booster Missile

Groupe: Membre

Inscrit le: 22/04/08
Messages: 1420
Lieu: Derrière le cla...
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 ?

____________________
!! Accroche toi a la console, je retire le shell !!

pm http://chez-swan.net    
   Le 22/09/10 à 13h21 Citer      

Administrateur

Equipe historique

Sexe:
Inscrit le: 04/08/05
Messages: 11001
Lieu: Aix en Provence
É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.
____________________
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."

pm ben.popeye@phpboost.com http://www.phpboost.com    
   Le 20/10/10 à 17h07 Citer      

Booster Missile

Groupe: Membre

Inscrit le: 22/04/08
Messages: 1420
Lieu: Derrière le cla...
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 :)
____________________
!! Accroche toi a la console, je retire le shell !!

pm http://chez-swan.net    
RssDé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é
Répondre
Vous n'êtes pas autorisé à écrire dans cette catégorie
Annonces