Quick links: Content - sections - sub sections
EN FR
Quick Search Advanced search
 
Page

  [Opened] [Résolu]Interface jIFormsDatasource dans une classe métier pour un formulaire

Posted by Mindiell on 03/09/2012 16:29

Voilà mon erreur :

Fatal error: Interface 'jIFormsDatasource' not found in 
monsite\modules\view\classes\Geography.class.php on line 11

Faut-il que j'inclue quelque chose dans ma classe pour qu'elle connaisse l'interface ? Je n'ai jamais utilisé d'interface dans php pour le moment, donc je suis un peu perdu ;)


Mindiell

  [Opened] Interface jIFormsDatasource dans une classe métier pour un formulaire

Reply #1 Posted by foxmask on 03/09/2012 16:48

en principe on fait

class toto implements jIFormsDatasource {} 

et ca ne devrait pas poser de soucis


@GitHub - Forum HaveFnuBB! powered by Jelix - Le Booster Jelix !

  [Opened] Interface jIFormsDatasource dans une classe métier pour un formulaire

Reply #2 Posted by Mindiell on 03/12/2012 16:14

Eh bien j'ai fait class Geography implements jIFormsDatasource { Et j'obtiens le message d'erreur ci-dessus :) Attention, jelix est mis à côté de mon site web, se pourrait-il qu'un chemin soit en dur ou autre ?


Mindiell

  [Opened] Interface jIFormsDatasource dans une classe métier pour un formulaire

Reply #3 Posted by Mindiell on 03/12/2012 16:56

Bon, je ne comprends pas, j'ai ré-essayé pour vérifié par acquis de conscience, et ça marche... J'ai du récupérer une vieille erreur dans les logs et me fourvoyer...


Mindiell

  [Opened] Interface jIFormsDatasource dans une classe métier pour un formulaire

Reply #4 Posted by foxmask on 03/12/2012 16:58

hé bien tant mieux si ce n'est que ça :)


@GitHub - Forum HaveFnuBB! powered by Jelix - Le Booster Jelix !

  [Opened] Interface jIFormsDatasource dans une classe métier pour un formulaire

Reply #5 Posted by Mindiell on 03/13/2012 09:37

Eh bien mauvaise nouvelle : ça ne marche plus :) En fait, je relance mon serveur ce matin, je vai sur mon site (en local) et ma classe me sort un joli : Fatal error: Interface 'jIFormsDatasource' not found in modules\view\classes\Geography.class.php on line 11

Donc je vire le implements, et ça fonctionne. Ensuite, je me connecte, je vais sur le formulaire qui utilise cette classe en tant que datasource : Il ne retrouve aucune information (alors que j'ai bien les méthodes de l'interface, mais bon, ça me parait normal ça).

Je remets le implements et je rafraichis mon formulaire : j'ai bien les données ! Par contre, lorsque je reviens sur ma page principale : Toc ! l'erreur est à nouveau là.

Mon souci c'est que ma classe métier est globale au site, et que je l'utilise pour retrouver des informations spécifiques dans plusieurs modules. Y a-t-il quelque chose que je ne fais pas bien ? Je suppose qu'en l'employant en tant que datasource pour mon form, il doit inclure certains fichiers en amont, chose qu'il ne fait pas lorsque je l'utilise comme simple classe dans mon autre module...

En gros : Help ! ;o)


Mindiell

  [Opened] [Résolu]Interface jIFormsDatasource dans une classe métier pour un formulaire

Reply #6 Posted by laurentj on 03/13/2012 13:26

Bonjour,

Y a-t-il quelque chose que je ne fais pas bien ?

bah oui, tu as oublié de faire un include de ce jIFormsDatasource (require_once (JELIX_LIB_PATH.'forms/...')) dans le fichier de ta classe. L'erreur PHP est pourtant classique... Tu n'as pas l'erreur quand il y a le formulaire affiché car jForms fait l'include. Mais si tu l'utilises dans des pages qui n'ont pas de formulaire, forcément, ça plante.

  [Opened] [Résolu]Interface jIFormsDatasource dans une classe métier pour un formulaire

Reply #7 Posted by Mindiell on 03/13/2012 14:08

Bon, donc ma première idée était bien la bonne... Ouf ! Je m'en vais le notifier dans le wiki de suite ;)

Merci !


Mindiell

 
Page
  1. [Résolu]Interface jIFormsDatasource dans une classe métier pour un formulaire