Note de ce sujet :
  • Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5
[Résolu] Upgrade 1.6.7 vers 1.9.4.1 bugs avec formbrowser/formbuilder
#1
Voici mon installation en local, wamp, php 5.2.9-1

Citation :#~~~~~ DEBUT BLOC A NE PAS SUPPRIMER ~~~~~
#~ Version du CMS: #1.9.4.1
#~ Url du site : localhost
#~ Hébergeur / Soft :
#~ Informations Système :
#~ ----------------------------------------------
#~ Cms Version: 1.9.4.1
#~ Installed Modules:
#~ CMSMailer: 2.0.1
#~ FileManager: 1.1.0
#~ MenuManager: 1.7.6
#~ ModuleManager: 1.4.2
#~ News: 2.11.2
#~ nuSOAP: 1.0.2
#~ Printing: 1.1.2
#~ Search: 1.6.10
#~ ThemeManager: 1.1.4
#~ TinyMCE: 2.8.4
#~ FormBuilder: 0.7
#~ CGExtensions: 1.24.1
#~ Album: 0.9.3
#~ NMS: 2.3.2
#~ FormBrowser: 0.4
#~ Captcha: 0.4.3
#~ CGCalendar: 1.5.7
#~ Config Information:
#~ php_memory_limit: 64M
#~ process_whole_template: false
#~ output_compression: false
#~ max_upload_size: 30000000
#~ default_upload_permission: 664
#~ url_rewriting: none
#~ page_extension:
#~ query_var: page
#~ image_manipulation_prog: GD
#~ auto_alias_content: true
#~ locale: fr_FR.utf-8
#~ default_encoding: utf-8
#~ admin_encoding: utf-8
#~ set_names: false
#~ Php Information:
#~ phpversion: 5.2.9-1
#~ md5_function: On (Vrai)
#~ gd_version: 2
#~ tempnam_function: On (Vrai)
#~ magic_quotes_runtime: Off (Faux)
#~ E_STRICT: 0
#~ memory_limit: 64M
#~ max_execution_time: 60
#~ output_buffering: 1
#~ safe_mode: Off (Faux)
#~ file_uploads: On (Vrai)
#~ post_max_size: 16M
#~ upload_max_filesize: 16M
#~ session_save_path: c:/wamp2/tmp (0777)
#~ session_use_cookies: On (Vrai)
#~ xml_function: On (Vrai)
#~ Server Information:
#~ Server Api: apache2handler
#~ Server Db Type: MySQL (mysql)
#~ Server Db Version: 5.1.32
#~ ----------------------------------------------
#~~~~~ FIN BLOC A NE PAS SUPPRIMER ~~~~~


Bonjour à tous Smile

Je prépare une mise à jour de la version 1.6.7 vers 1.9.4.1 en local avant de la faire en ligne.

En ligne, avec la version 1.6.7, formbuilder 0.5.11 et formbrowser 0.2.3, je n'ai aucun problème. Quatres champs sont remplis avec le formulaire, les données sont stockées dans la BD, et elles sont aussi listées sur une des pages du site. J'ai près de 1000 entrées provenant de ce formulaire... Remplir le formulaire et Lister les entrées du formulaire

Maintenant, avec la version 1.9.4.1, formbuilder 0.7 et formbrowser 0.4, plus rien de fonctionne comme avant.
J'ai modifié le formulaire pour lui dire de stocker dans formbrowser tel qu'indiqué dans la page d'aide du module (apparamment, stocker dans la BD est devenu obsolète ?) mais je vois bien que ça ne peut pas fonctionner. Il stocke maintenant dans un nouveau champ de la BD ?

Je fais comment pour rapatrier mes entrées déjà existantes ? Je n'arrive plus à les lister sur le site maintenant...
Et si de nouvelles entrées se crées, il leur faut aussi être lister.

Bref, je patine depuis hier. J'ai beau chercher dans ce forum et sur le forum anglais, jusqu'à maintenant, je n'ai pas trouvé de solution...

Je suis découragé et j'aurais besoin d'aide pour savoir où chercher et trouver une piste qui m'aiderait à solutionner ce problème...

J'ai essayé de modifier le gabarit d'affichage en liste sur le site de cette façon :
Code :
{* default user list template *}
<h4>{$browser_title}</h4>

{if isset($fbrp_message) && !empty($fbrp_message)}<h2>{$fbrp_message}</h2>{/if}

{if $hasnav == 1}
<div class="module_bfr_browsenav">{$prev}&nbsp;({$pageof})&nbsp;{$pagelinks}&nbsp;{$next}</div>
{/if}

<table id="liste-petition">
    <tr>    
        {if $userapproval}<th>{$title_user_approved}</th>{/if}
    {section name=namelist start=1 loop=$fieldcount}
          <th>{$sortingnames[$smarty.section.namelist.index]}</th>
      {/section}
        <th>{$title_sort_submit_date}</th>
        </tr>
    {foreach from=$list item=entry}
        <tr>            
    {section name=vals start=1 loop=$fieldcount}
                    <td>{$entry->fields[$smarty.section.vals.index]}</td>
      {/section}
                    <td>{$entry->submitted}</td>
        </tr>
    {/foreach}
    
</table>

{if $hasnav == 1}
<div class="module_bfr_browsenav">{$prev}&nbsp;{$pagelinks}&nbsp;{$next}</div>
{/if}
{if $allow_user_add}{$addlink}{$addresp}{/if}


Bon, je suis pas mal fatiguée là, j'ai peut-être oublié des info à vous donner. Dites-le moi...

Merci à l'avance
C'est en forgeant que l'on devient forgeron !
#2
utilise
http://www.cmsmadesimple.fr/forum/viewtopic.php?id=2937
J-C Etiemble v 2.2.xx
#3
Bonjour Jean-Claude, en lisant ta réponse je me suis demandée si j'avais bien expliqué mon problème...

J'ai installé la version 1.9.4.1 en local avec ma base de données que j'utilise en ligne avec la version 1.6.7.

Aucun problème avec l'import de la base de données et aucun problème avec l'installation en local. Le site fonctionne mais j'ai des problèmes avec les modules formbuilder et formbrowser.

D'ailleurs, je viens de poster un message sur le forum anglais sur le même sujet.

De ce que j'ai compris, c'est que les données de mon formulaire qui auparavent étaient stocker dans ma base sous la table "module_fb_resp_val" sont maintenant stockées dans la table "module_fb_formbrowser" avec la nouvelle version de formbrowser quand je paramètre mon formulaire en conséquence (stocker dans formbrowser v0.3).

Je suis capable d'écrire une routine me permettant d'aller chercher mes anciennes données et je voudrais peut-être les insérer alors dans la nouvelle table (module_fb_formbrowser) mais il va me manquer des champs comme secret_code et je ne suis pas certaine que ce soit la solution.

Comme je veux continuer à utiliser le même formulaire je dois faire des changements dans ma gestion de celui-ci. Ce formulaire me sert de pétition que j'affiche ensuite sur le site. Dans le pire des cas, je vais me faire un formulaire standard sans passer par formbuilder et je vais afficher les résultats sans passer par formbrowser.

Je sais plus trop où regarder et j'ai juste besoin d'une piste de solution pour m'aider à poursuivre.

Si tu as une idée...
Merci Smile
C'est en forgeant que l'on devient forgeron !
#4
Si j'ai bien compris, dans ton ancienne version, tu avais stocké les données dans "Store Results in Database" au lieu de "Store Results for FormBrowser Module v.3." alors que tu utilisais formBrowser ! Pas très fûté Wink

Ok, Store Results in Database est devenu obsolète, mais fonctionne toujours, non ?

Duplique ton ancien formulaire, ajoute le champ "Store Results for FormBrowser Module v.3.", crée un nouveau Browser et regarde comment sont stockées les datas. Tu n'auras plus qu'à réinjecter les anciennes dans les tables correspondantes par sql.
N'oublie pas que tu peux exporter les anciennes dats par excel (et donc csv).

[edit]C'est ce que tu voulais faire, c'est quoi tes "secret_code" et où sont-ils enregistrés ?[/edit]
#5
Bonjour Jean,

Jean le Chauve a écrit :Si j'ai bien compris, dans ton ancienne version, tu avais stocké les données dans "Store Results in Database" au lieu de "Store Results for FormBrowser Module v.3." alors que tu utilisais formBrowser ! Pas très fûté

Oui, ben c'est ça... par manque d'expérience sans doute :/ et en même temps, j'arrivais au résultat voulu.

Et c'est rien ça, je viens d'aller vérifier dans ma version en ligne et avant que tu m'en parles, je n'avais pas vu la différence... :lol:
Ok, vive l'humilité !

Le "secret_code" est un des champs de la table "module_fb_formbrowser", celle dans laquelle les données sont stockées dans la base (avec le store results for formbrowser module v.3 Wink). Les autres sont : fbr_id, form_id, index_key_1 à 5, user_approuved, secret_code, admin_approuved, submitted, feuid et enfin response. Certains des champs peuvent être à null sans problème.

Pour le csv, je le savais. J'ai fait quelques tests mais comment les réinjecter après dans les bons champs ?... Je continue tout de même à chercher en attendant.

Merci pour ta réponse Smile
C'est en forgeant que l'on devient forgeron !
#6
Bon alors j'ai réussi à migrer mes anciennes données vers la table "module_fb_formbrowser". Cependant, je n'arrive pas à la lister dans le panneau d'administration de Formbrowser...

Je m'y attendais un peu. Il y a certains champs qui sont null, comme le "secret_code" et "response".

Voici le genre d'erreurs que j'ai en ce moment:
Code :
Fatal error: Uncaught exception 'Exception' with message 'String could not be parsed as XML' in C:\wamp2\www\ChLP\modules\FormBuilder\FormBuilder.module.php:364 Stack trace: #0 C:\wamp2\www\ChLP\modules\FormBuilder\FormBuilder.module.php(364): SimpleXMLElement->__construct('') #1 C:\wamp2\www\ChLP\modules\FormBuilder\FormBuilder.module.php(575): FormBuilder->ParseResponseXML(NULL) #2 C:\wamp2\www\ChLP\modules\FormBrowser\classes\Browser.class.php(405): FormBuilder->GetSortedResponses('14', 0, '10', false, false, Array, 'd-m-Y', Array) #3 C:\wamp2\www\ChLP\modules\FormBrowser\action.admin_browse.php(14): fbrBrowser->BrowserShowList('m1_', '', Object(FormBrowser), Array, 'admin_list_fiel...', true) #4 C:\wamp2\www\ChLP\lib\classes\class.module.inc.php(2005): include('C:\wamp2\www\Ch...') #5 C:\wamp2\www\ChLP\lib\classes\class.module.inc.php(2050): CMSModule->DoAction('admin_browse', 'm1_', Array, '') #6 C:\wamp2\www\ChLP\admin\moduleinterface.php(157): CMSModule->DoActionBase('admin_browse', 'm1_', Array) #7 {main} thrown in C:\wamp2\www\ChLP\modules\FormBuilder\FormBuilder.module.php on line 364

Quelqu'un a une idée du champ qui cause problème ?

*** Edit *** Finalement, j'ai décidé de gérer ma pétition sans formbuilder ni formbrowser. Donc, j'ai une nouvelle table qui contient mes anciennes données et dans laquelle je vais stocker mes nouvelles entrées. Je vais faire mon propre formulaire. Je vais pouvoir facilement l'afficher sur le site et l'extraire en fichier excel de la même façon.

À+
C'est en forgeant que l'on devient forgeron !
#7
Bon, finalement j'ai créé une nouvelle table dans ma base de données qui contient ma pétition.
J'ai rapatrié mes anciennes données dans celles-ci.
J'ai viré formbrowser pour afficher ma liste des signataires en créant une balise utilisateur et j'ai fait mon propre formulaire sans utiliser formbuilder.
Donc, ma pétition ne dépend plus ni de l'un ni de l'autre.

J'ai aussi eu à transférer les données que j'avais dans l'ancien module Calendar vers CGCalendar.

Je me suis bien amuser à travailler avec ma base de données ! Tongue

Ma mise à jour en ligne est complétée et fonctionnelle et j'en suis heureuse...
C'est en forgeant que l'on devient forgeron !


Atteindre :


Utilisateur(s) parcourant ce sujet : 1 visiteur(s)