La Fabrique est un outil de construction de plugin spécialement orientée pour la gestion d’objets éditoriaux. Pour ceux qui ont connu le plugin « Chat » ou « Chat2 », sachez que la Fabrique sait gérer tout ce qui est présent dans ce tutoriel / plugin, et même au-delà, bien au-delà.
N’allez pas trop vite !
Cette note est aussi présente lors de l’installation du plugin, mais redisons le encore :
- la Fabrique crée un code fonctionnel mais qui ne répondra peut être pas à 100% de vos attentes. La Fabrique ne peut pas tout faire. À vous d’adapter ensuite le code généré.
- un plugin est très vite fait grâce à la Fabrique. Mais attention : le code n’est qu’une partie d’un plugin. Si vous voulez que votre plugin perdure dans le temps, il faut qu’il soit utile, partagé, documenté, traduit, il faut assister les usages, et maintenir son code avec les évolutions de SPIP et c’est tout cela aussi un plugin !
- la Zone de SPIP permet de collaborer sur les plugins. Essayez au maximum de ne pas créer des plugins existant déjà, pour éviter des doublons qui peuvent disperser d’autant les énergies pour toutes les tâches citées au point précédent.
Pré-requis
Pour faire fonctionner la Fabrique il faut :
- PHP >= 5.3 (il est possible que 5.2 fonctionne aussi)
- SPIP 3.0-RC minimum
- Un navigateur récent (testé avec FF11 et Chrome 18.0)
- Saisies >= 0.25
- Et peut être un système Unix/Linux pour son serveur (appel de
exec('diff')
en PHP) [1]
Optionnellement mais conseillé :
Démonstration vidéo
Dans la vidéo suivante, vous verrez une présentation de la Fabrique impliquant la construction d’un plugin « Félins » dans lequel nous créons 1 objet éditorial « Chats ».
Cette vidéo est aussi disponible en meilleure qualité sur medias.spip.net
Accéder à la fabrique
Depuis SPIP 3.1, La fabrique est accessible dans le menu de développement (il faut activer l’option de vos préférences personnelles pour voir ce menu)
Documentation
En attendant une documentation plus riche ici, vous pouvez lire ces articles :
Capture d’écran
À tester
« La Fabrique » doit être testée dans différents environnements. Vous êtes donc invités à explorer cet outil développé avec git sur la Zone [2]
Limitation connue
Actuellement (version 1.16.3), à partir d’un certain nombre d’objets et de champs (environ 10 objets * 8 champs ici), le formulaire devient naturellement inopérant à cause d’une limitation voulue de PHP : max_input_vars, par défaut à 1000 dans php.ini.
Pour contourner, il faut modifier php.ini pour tolérer plus de champs (5000) par exemple.
Attention
Depuis la version 2.0.0, le menu de la fabrique se trouve dans celui de Développement. Celui-ci est activable depuis l’espace préférence de votre compte webmestre.
Discussions par date d’activité
Une discussion
Bonjour,
Sur un spip v4.2.8 php 8.1 fabrique 3.1.1
j’ai une erreur php dans :
nomplugin_options.php,
nomplugin_fonctions.php
Dans ces fichiers je ne trouve que :
if (!defined('_ECRIRE_INC_VERSION')) { return; }
Il n’y a rien d’autre de défini dans ces fichiers.
et bien sur « ça plante spip »
que faudrait-il avoir en complément ?
Merci bien Alain
Bonjour,
Sur un spip v4.2.8 php 8.1
En fait, dans lafabrique, une fois tout renseigné, j’ai une annonce d’erreur :
Oups une erreur à empêché de soumettre ....
Je ne trouve pas ce qu’il manque.
Je joint le fichier de sauvegarde si ça peut aider
Merci bien Alain
Bonjour,
Je tourne en rond sans arriver à créer un plugin qui ’marche’.
Sur un spip v4.2.8 php 8.1 fabrique 3.1.1
La création d’un plugin se passe bien uniquement pour l’entête jusqu’à l’activation du plugin.
Dés que je déclare un contenus, çà plante inexorablement spip.
que faire pour trouver ou ça bloque ?
Merci bien. je vous mets le fichier fabrique_voir.php pour vous fournir ma base de travail.
Alain
<?php /** * Fichier généré par la Fabrique de plugin v7 * le 2024-01-15 18:37:02 * * Ce fichier de sauvegarde peut servir à recréer * votre plugin avec le plugin «Fabrique» qui a servi à le créer. * * Bien évidemment, les modifications apportées ultérieurement * par vos soins dans le code de ce plugin généré * NE SERONT PAS connues du plugin «Fabrique» et ne pourront pas * être recréées par lui ! * * La «Fabrique» ne pourra que régénerer le code de base du plugin * avec les informations dont il dispose. * **/ if (!defined('_ECRIRE_INC_VERSION')) { return; } $data = array ( 'fabrique' => array ( 'version' => 7, ), 'paquet' => array ( 'prefixe' => 'voir', 'nom' => 'pour voir', 'slogan' => 'rien a faire', 'description' => 'sans contenus pour tester simplement', 'logo' => array ( 0 => '', ), 'credits' => array ( 'logo' => array ( 'texte' => '', 'url' => '', ), ), 'version' => '1.0.0', 'auteur' => 'alain3', 'auteur_lien' => '', 'licence' => 'GNU/GPL', 'etat' => 'dev', 'compatibilite' => '[4.2.8;4.3.*]', 'documentation' => '', 'administrations' => '', 'schema' => '1.0.0', 'formulaire_config' => '', 'formulaire_config_titre' => '', 'fichiers' => array ( 0 => 'autorisations', 1 => 'fonctions', 2 => 'options', 3 => 'pipelines', ), 'inserer' => array ( 'paquet' => '', 'administrations' => array ( 'maj' => '', 'desinstallation' => '', 'fin' => '', ), 'base' => array ( 'tables' => array ( 'fin' => '', ), ), ), 'scripts' => array ( 'pre_copie' => '', 'post_creation' => '', ), 'exemples' => 'on', 'saisies_mode' => 'php', ), 'objets' => array ( 0 => array ( 'nom' => 'vides', 'nom_singulier' => 'vide', 'genre' => 'masculin', 'logo' => array ( 0 => '', 32 => '', 24 => '', 16 => '', 12 => '', ), 'table' => 'spip_vide', 'cle_primaire' => 'id_vide', 'cle_primaire_sql' => 'bigint(21) NOT NULL', 'table_type' => 'vide', 'champs' => array ( 0 => array ( 'nom' => 'seul', 'champ' => 'seul', 'sql' => 'varchar(50) NOT NULL DEFAULT \'\'', 'caracteristiques' => array ( 0 => 'editable', 1 => 'versionne', ), 'recherche' => '1', 'saisie' => 'textarea', 'explication' => '', 'saisie_options' => 'conteneur_class=pleine_largeur, class=inserer_barre_edition, rows=4', ), ), 'champ_titre' => 'seul', 'champ_date' => 'date_publication', 'champ_date_ignore' => '', 'statut' => 'on', 'chaines' => array ( 'titre_objets' => 'Vides', 'titre_page_objets' => 'Les vides', 'titre_objet' => 'Vide', 'info_aucun_objet' => 'Aucun vide', 'info_1_objet' => 'Un vide', 'info_nb_objets' => '@nb@ vides', 'icone_creer_objet' => 'Créer un vide', 'icone_modifier_objet' => 'Modifier ce vide', 'titre_logo_objet' => 'Logo de ce vide', 'titre_langue_objet' => 'Langue de ce vide', 'texte_definir_comme_traduction_objet' => 'Ce vide est une traduction du vide numéro :', 'titre_\\objets_lies_objet' => 'Liés à ce vide', 'titre_objets_rubrique' => 'Vides de la rubrique', 'info_objets_auteur' => 'Les vides de cet auteur', 'retirer_lien_objet' => 'Retirer ce vide', 'retirer_tous_liens_objets' => 'Retirer tous les vides', 'ajouter_lien_objet' => 'Ajouter ce vide', 'texte_ajouter_objet' => 'Ajouter un vide', 'texte_creer_associer_objet' => 'Créer et associer un vide', 'texte_changer_statut_objet' => 'Ce vide est :', 'supprimer_objet' => 'Supprimer cet vide', 'confirmer_supprimer_objet' => 'Confirmez-vous la suppression de cet vide ?', ), 'liaison_directe' => '', 'table_liens' => '', 'afficher_liens' => '', 'roles' => '', 'auteurs_liens' => '', 'vue_auteurs_liens' => '', 'autorisations' => array ( 'objets_voir' => '', 'objet_creer' => '', 'objet_voir' => '', 'objet_modifier' => '', 'objet_supprimer' => '', 'associerobjet' => '', ), ), ), 'images' => array ( 'paquet' => array ( 'logo' => array ( 0 => array ( 'extension' => '', 'contenu' => '', ), ), ), 'objets' => array ( 0 => array ( ), ), ), );
Erreur innatendue dans un formulaire -> erreur PHP.
Il faudrait activer via mes_options.php l’affichage des erreurs et/ou accéder aux logs PHP pour en savoir plus
Bonjour,
Merci bien pour votre réponse.
Le morceau de spip.log réalisé lors de la dernière tentative de création :
2024-01-16 11:26:10 127.0.0.1 (pid 4434) :Pri:info: creation ../plugins/fabrique_auto/voir/prive/objets/liste/ 2024-01-16 11:26:10 127.0.0.1 (pid 4434) :Pri:info: include_spip balise/mid_objet.php non trouve 2024-01-16 11:26:10 127.0.0.1 (pid 4434) :Pri:info: include_spip balise/mid_.php non trouve 2024-01-16 11:26:10 127.0.0.1 (pid 4434) :Pri:info: include_spip balise/mtype.php non trouve
Puis après avoir re tenté la création qui alors plante spip j’ai eu :
2024-01-16 11:34:19 127.0.0.1 (pid 715) :Pri:debug: Connexion MySQLi vers localhost, base spip, prefixe spip operationnelle 2024-01-16 11:34:19 127.0.0.1 (pid 715) :Pri:debug: POST ./?exec=fabrique - ../config/connect.php 2024-01-16 11:34:19 127.0.0.1 (pid 715) :Pri:debug: autoriser loger 0 (Alain) ? 2024-01-16 11:34:19 127.0.0.1 (pid 715) :Pri:debug: autoriser_loger_dist(loger, , 0, Alain) : OK 2024-01-16 11:34:19 127.0.0.1 (pid 715) :Pri:debug: autoriser ecrire (Alain) ? 2024-01-16 11:34:19 127.0.0.1 (pid 715) :Pri:debug: autoriser_ecrire_dist(ecrire, , , Alain) : OK 2024-01-16 11:34:19 127.0.0.1 (pid 715) :Pri:info: include_spip formulaires/fabriquer_plugin/verifier.php non trouve 2024-01-16 11:34:19 127.0.0.1 (pid 715) :Pri:info: include_spip formulaires/fabriquer_plugin/verifier_post_saisies.php non trouve 2024-01-16 11:34:19 127.0.0.1 (pid 715) :Pri:info: ajoute session ../tmp/sessions/1_c084aadfaab7a11afad7707ee56db644.php cookie 86400 2024-01-16 11:34:19 127.0.0.1 (pid 715) :Pri:debug: autoriser ecrire (Alain) ? 2024-01-16 11:34:19 127.0.0.1 (pid 715) :Pri:debug: autoriser_ecrire_dist(ecrire, , , Alain) : OK 2024-01-16 11:34:19 127.0.0.1 (pid 715) :Pri:info: creation ../plugins/fabrique_auto/voir/ 2024-01-16 11:34:19 127.0.0.1 (pid 715) :Pri:info: calcul (1.123 ms) [../plugins/auto/fabrique/v3.1.1/fabrique/fabrique_prefixe.php] fabrique=array:1(version=7), paquet=array:21(prefixe=voir, nom='pour voir', slogan='rien a faire', …), objets=array:1(0=array:20), data=array:4(fabrique=array:1, paquet=array:21, objets=array:1, …), lang=fr, date='2024-01-16 11:34:19', date_default=1, date_redac='2024-01-16 11:34:19', date_redac_default=1 (4749 octets) 2024-01-16 11:34:19 127.0.0.1 (pid 715) :Pri:info: table_objet(vide) calculee sans verification 2024-01-16 11:34:19 127.0.0.1 (pid 715) :Pri:info: calcul (1.461 ms) [../plugins/auto/fabrique/v3.1.1/fabrique/paquet.xml] fabrique=array:1(version=7), paquet=array:21(prefixe=voir, nom='pour voir', slogan='rien a faire', …), objets=array:1(0=array:29), prefixe=voir, mprefixe=VOIR, exemples=on, les_id_objets=array:1(0=id_vide), les_types=array:1(0=vide), les_objets=array:1(0=vides), les_tables=array:1(0=spip_vides), les_tables_objets=array:1(0=spip_vides), lang=fr, date='2024-01-16 11:34:19', date_default=1, date_redac='2024-01-16 11:34:19', date_redac_default=1 (1789 octets) 2024-01-16 11:34:19 127.0.0.1 (pid 715) :Pri:info: creation ../plugins/fabrique_auto/voir/lang/ 2024-01-16 11:34:19 127.0.0.1 (pid 715) :Pri:info: calcul (0.212 ms) [../plugins/auto/fabrique/v3.1.1/fabrique/lang/paquet-prefixe_fr.php] fabrique=array:1(version=7), paquet=array:21(prefixe=voir, nom='pour voir', slogan='rien a faire', …), objets=array:1(0=array:29), prefixe=voir, mprefixe=VOIR, exemples=on, les_id_objets=array:1(0=id_vide), les_types=array:1(0=vide), les_objets=array:1(0=vides), les_tables=array:1(0=spip_vides), les_tables_objets=array:1(0=spip_vides), lang=fr, date='2024-01-16 11:34:19', date_default=1, date_redac='2024-01-16 11:34:19', date_redac_default=1 (319 octets) 2024-01-16 11:34:19 127.0.0.1 (pid 715) :Pri:info: calcul (0.373 ms) [../plugins/auto/fabrique/v3.1.1/fabrique/lang/prefixe_fr.php] fabrique=array:1(version=7), paquet=array:21(prefixe=voir, nom='pour voir', slogan='rien a faire', …), objets=array:1(0=array:29), prefixe=voir, mprefixe=VOIR, exemples=on, les_id_objets=array:1(0=id_vide), les_types=array:1(0=vide), les_objets=array:1(0=vides), les_tables=array:1(0=spip_vides), les_tables_objets=array:1(0=spip_vides), lang=fr, date='2024-01-16 11:34:19', date_default=1, date_redac='2024-01-16 11:34:19', date_redac_default=1 (224 octets) 2024-01-16 11:34:19 127.0.0.1 (pid 715) :Pri:info: calcul (0.408 ms) [../plugins/auto/fabrique/v3.1.1/fabrique/entetes/php] fabrique=array:1(version=7), paquet=array:21(prefixe=voir, nom='pour voir', slogan='rien a faire', …), objets=array:1(0=array:29), prefixe=voir, mprefixe=VOIR, exemples=on, les_id_objets=array:1(0=id_vide), les_types=array:1(0=vide), les_objets=array:1(0=vides), les_tables=array:1(0=spip_vides), les_tables_objets=array:1(0=spip_vides), lang=fr, date='2024-01-16 11:34:19', date_default=1, date_redac='2024-01-16 11:34:19', date_redac_default=1, description='Fichier gérant l'installatio…', package=Installation (264 octets) 2024-01-16 11:34:19 127.0.0.1 (pid 715) :Pri:info: calcul (2.488 ms) [../plugins/auto/fabrique/v3.1.1/fabrique/prefixe_administrations.php] fabrique=array:1(version=7), paquet=array:21(prefixe=voir, nom='pour voir', slogan='rien a faire', …), objets=array:1(0=array:29), prefixe=voir, mprefixe=VOIR, exemples=on, les_id_objets=array:1(0=id_vide), les_types=array:1(0=vide), les_objets=array:1(0=vides), les_tables=array:1(0=spip_vides), les_tables_objets=array:1(0=spip_vides), lang=fr, date='2024-01-16 11:34:19', date_default=1, date_redac='2024-01-16 11:34:19', date_redac_default=1 (2808 octets) 2024-01-16 11:34:19 127.0.0.1 (pid 715) :Pri:info: calcul (0.323 ms) [../plugins/auto/fabrique/v3.1.1/fabrique/entetes/php] fabrique=array:1(version=7), paquet=array:21(prefixe=voir, nom='pour voir', slogan='rien a faire', …), objets=array:1(0=array:29), prefixe=voir, mprefixe=VOIR, exemples=on, les_id_objets=array:1(0=id_vide), les_types=array:1(0=vide), les_objets=array:1(0=vides), les_tables=array:1(0=spip_vides), les_tables_objets=array:1(0=spip_vides), lang=fr, date='2024-01-16 11:34:19', date_default=1, date_redac='2024-01-16 11:34:19', date_redac_default=1, description='Définit les autorisations du…', package=Autorisations (241 octets) 2024-01-16 11:34:19 127.0.0.1 (pid 715) :Pri:info: calcul (1.624 ms) [../plugins/auto/fabrique/v3.1.1/fabrique/prefixe_autorisations.php] fabrique=array:1(version=7), paquet=array:21(prefixe=voir, nom='pour voir', slogan='rien a faire', …), objets=array:1(0=array:29), prefixe=voir, mprefixe=VOIR, exemples=on, les_id_objets=array:1(0=id_vide), les_types=array:1(0=vide), les_objets=array:1(0=vides), les_tables=array:1(0=spip_vides), les_tables_objets=array:1(0=spip_vides), lang=fr, date='2024-01-16 11:34:19', date_default=1, date_redac='2024-01-16 11:34:19', date_redac_default=1 (3531 octets) 2024-01-16 11:34:19 127.0.0.1 (pid 715) :Pri:info: calcul (0.321 ms) [../plugins/auto/fabrique/v3.1.1/fabrique/entetes/php] fabrique=array:1(version=7), paquet=array:21(prefixe=voir, nom='pour voir', slogan='rien a faire', …), objets=array:1(0=array:29), prefixe=voir, mprefixe=VOIR, exemples=on, les_id_objets=array:1(0=id_vide), les_types=array:1(0=vide), les_objets=array:1(0=vides), les_tables=array:1(0=spip_vides), les_tables_objets=array:1(0=spip_vides), lang=fr, date='2024-01-16 11:34:19', date_default=1, date_redac='2024-01-16 11:34:19', date_redac_default=1, description='Fonctions utiles au plugin po…', package=Fonctions (227 octets) 2024-01-16 11:34:19 127.0.0.1 (pid 715) :Pri:info: calcul (1.042 ms) [../plugins/auto/fabrique/v3.1.1/fabrique/prefixe_fonctions.php] fabrique=array:1(version=7), paquet=array:21(prefixe=voir, nom='pour voir', slogan='rien a faire', …), objets=array:1(0=array:29), prefixe=voir, mprefixe=VOIR, exemples=on, les_id_objets=array:1(0=id_vide), les_types=array:1(0=vide), les_objets=array:1(0=vides), les_tables=array:1(0=spip_vides), les_tables_objets=array:1(0=spip_vides), lang=fr, date='2024-01-16 11:34:19', date_default=1, date_redac='2024-01-16 11:34:19', date_redac_default=1 (459 octets) 2024-01-16 11:34:19 127.0.0.1 (pid 715) :Pri:info: calcul (0.320 ms) [../plugins/auto/fabrique/v3.1.1/fabrique/entetes/php] fabrique=array:1(version=7), paquet=array:21(prefixe=voir, nom='pour voir', slogan='rien a faire', …), objets=array:1(0=array:29), prefixe=voir, mprefixe=VOIR, exemples=on, les_id_objets=array:1(0=id_vide), les_types=array:1(0=vide), les_objets=array:1(0=vides), les_tables=array:1(0=spip_vides), les_tables_objets=array:1(0=spip_vides), lang=fr, date='2024-01-16 11:34:19', date_default=1, date_redac='2024-01-16 11:34:19', date_redac_default=1, description='Options au chargement du plug…', package=Options (230 octets) 2024-01-16 11:34:19 127.0.0.1 (pid 715) :Pri:info: calcul (1.018 ms) [../plugins/auto/fabrique/v3.1.1/fabrique/prefixe_options.php] fabrique=array:1(version=7), paquet=array:21(prefixe=voir, nom='pour voir', slogan='rien a faire', …), objets=array:1(0=array:29), prefixe=voir, mprefixe=VOIR, exemples=on, les_id_objets=array:1(0=id_vide), les_types=array:1(0=vide), les_objets=array:1(0=vides), les_tables=array:1(0=spip_vides), les_tables_objets=array:1(0=spip_vides), lang=fr, date='2024-01-16 11:34:19', date_default=1, date_redac='2024-01-16 11:34:19', date_redac_default=1 (461 octets) 2024-01-16 11:34:19 127.0.0.1 (pid 715) :Pri:info: calcul (0.324 ms) [../plugins/auto/fabrique/v3.1.1/fabrique/entetes/php] fabrique=array:1(version=7), paquet=array:21(prefixe=voir, nom='pour voir', slogan='rien a faire', …), objets=array:1(0=array:29), prefixe=voir, mprefixe=VOIR, exemples=on, les_id_objets=array:1(0=id_vide), les_types=array:1(0=vide), les_objets=array:1(0=vides), les_tables=array:1(0=spip_vides), les_tables_objets=array:1(0=spip_vides), lang=fr, date='2024-01-16 11:34:19', date_default=1, date_redac='2024-01-16 11:34:19', date_redac_default=1, description='Utilisations de pipelines par…', package=Pipelines (230 octets) 2024-01-16 11:34:19 127.0.0.1 (pid 715) :Pri:info: calcul (1.521 ms) [../plugins/auto/fabrique/v3.1.1/fabrique/prefixe_pipelines.php] fabrique=array:1(version=7), paquet=array:21(prefixe=voir, nom='pour voir', slogan='rien a faire', …), objets=array:1(0=array:29), prefixe=voir, mprefixe=VOIR, exemples=on, les_id_objets=array:1(0=id_vide), les_types=array:1(0=vide), les_objets=array:1(0=vides), les_tables=array:1(0=spip_vides), les_tables_objets=array:1(0=spip_vides), lang=fr, date='2024-01-16 11:34:19', date_default=1, date_redac='2024-01-16 11:34:19', date_redac_default=1 (767 octets) 2024-01-16 11:34:19 127.0.0.1 (pid 715) :Pri:info: creation ../plugins/fabrique_auto/voir/base/ 2024-01-16 11:34:19 127.0.0.1 (pid 715) :Pri:info: calcul (0.398 ms) [../plugins/auto/fabrique/v3.1.1/fabrique/entetes/php] fabrique=array:1(version=7), paquet=array:21(prefixe=voir, nom='pour voir', slogan='rien a faire', …), objets=array:1(0=array:29), prefixe=voir, mprefixe=VOIR, exemples=on, les_id_objets=array:1(0=id_vide), les_types=array:1(0=vide), les_objets=array:1(0=vides), les_tables=array:1(0=spip_vides), les_tables_objets=array:1(0=spip_vides), lang=fr, date='2024-01-16 11:34:19', date_default=1, date_redac='2024-01-16 11:34:19', date_redac_default=1, description='Déclarations relatives à la…', package=Pipelines (237 octets) 2024-01-16 11:34:19 127.0.0.1 (pid 715) :Pri:info: calcul (2.228 ms) [../plugins/auto/fabrique/v3.1.1/fabrique/base/prefixe.php] fabrique=array:1(version=7), paquet=array:21(prefixe=voir, nom='pour voir', slogan='rien a faire', …), objets=array:1(0=array:29), prefixe=voir, mprefixe=VOIR, exemples=on, les_id_objets=array:1(0=id_vide), les_types=array:1(0=vide), les_objets=array:1(0=vides), les_tables=array:1(0=spip_vides), les_tables_objets=array:1(0=spip_vides), lang=fr, date='2024-01-16 11:34:19', date_default=1, date_redac='2024-01-16 11:34:19', date_redac_default=1 (2231 octets) 2024-01-16 11:34:19 127.0.0.1 (pid 715) :Pri:info: calcul (1.069 ms) [../plugins/auto/fabrique/v3.1.1/fabrique/lang/objet_fr.php] fabrique=array:1(version=7), paquet=array:21(prefixe=voir, nom='pour voir', slogan='rien a faire', …), objets=array:1(0=array:29), prefixe=voir, mprefixe=VOIR, exemples=on, les_id_objets=array:1(0=id_vide), les_types=array:1(0=vide), les_objets=array:1(0=vides), les_tables=array:1(0=spip_vides), les_tables_objets=array:1(0=spip_vides), objet=array:29(nom=vides, nom_singulier=vide, genre=masculin, …), id_objet=id_vide, type=vide, table=spip_vides, mobjet=VIDES, lobjet=vides, mtype=VIDE, mid_objet=ID_VIDE, lang=fr, date='2024-01-16 11:34:19', date_default=1, date_redac='2024-01-16 11:34:19', date_redac_default=1 (1284 octets) 2024-01-16 11:34:19 127.0.0.1 (pid 715) :Pri:info: creation ../plugins/fabrique_auto/voir/formulaires/ 2024-01-16 11:34:19 127.0.0.1 (pid 715) :Pri:info: calcul (0.316 ms) [../plugins/auto/fabrique/v3.1.1/fabrique/formulaires/editer_objet.html] fabrique=array:1(version=7), paquet=array:21(prefixe=voir, nom='pour voir', slogan='rien a faire', …), objets=array:1(0=array:29), prefixe=voir, mprefixe=VOIR, exemples=on, les_id_objets=array:1(0=id_vide), les_types=array:1(0=vide), les_objets=array:1(0=vides), les_tables=array:1(0=spip_vides), les_tables_objets=array:1(0=spip_vides), objet=array:29(nom=vides, nom_singulier=vide, genre=masculin, …), id_objet=id_vide, type=vide, table=spip_vides, mobjet=VIDES, lobjet=vides, mtype=VIDE, mid_objet=ID_VIDE, lang=fr, date='2024-01-16 11:34:19', date_default=1, date_redac='2024-01-16 11:34:19', date_redac_default=1 (732 octets) 2024-01-16 11:34:19 127.0.0.1 (pid 715) :Pri:info: calcul (0.352 ms) [../plugins/auto/fabrique/v3.1.1/fabrique/entetes/php] fabrique=array:1(version=7), paquet=array:21(prefixe=voir, nom='pour voir', slogan='rien a faire', …), objets=array:1(0=array:29), prefixe=voir, mprefixe=VOIR, exemples=on, les_id_objets=array:1(0=id_vide), les_types=array:1(0=vide), les_objets=array:1(0=vides), les_tables=array:1(0=spip_vides), les_tables_objets=array:1(0=spip_vides), objet=array:29(nom=vides, nom_singulier=vide, genre=masculin, …), id_objet=id_vide, type=vide, table=spip_vides, mobjet=VIDES, lobjet=vides, mtype=VIDE, mid_objet=ID_VIDE, lang=fr, date='2024-01-16 11:34:19', date_default=1, date_redac='2024-01-16 11:34:19', date_redac_default=1, description='Gestion du formulaire de d'é…', package=Formulaires (236 octets) 2024-01-16 11:34:19 127.0.0.1 (pid 715) :Pri:info: calcul (3.315 ms) [../plugins/auto/fabrique/v3.1.1/fabrique/formulaires/editer_objet.php] fabrique=array:1(version=7), paquet=array:21(prefixe=voir, nom='pour voir', slogan='rien a faire', …), objets=array:1(0=array:29), prefixe=voir, mprefixe=VOIR, exemples=on, les_id_objets=array:1(0=id_vide), les_types=array:1(0=vide), les_objets=array:1(0=vides), les_tables=array:1(0=spip_vides), les_tables_objets=array:1(0=spip_vides), objet=array:29(nom=vides, nom_singulier=vide, genre=masculin, …), id_objet=id_vide, type=vide, table=spip_vides, mobjet=VIDES, lobjet=vides, mtype=VIDE, mid_objet=ID_VIDE, lang=fr, date='2024-01-16 11:34:19', date_default=1, date_redac='2024-01-16 11:34:19', date_redac_default=1 (5389 octets) 2024-01-16 11:34:19 127.0.0.1 (pid 715) :Pri:info: creation ../plugins/fabrique_auto/voir/prive/ 2024-01-16 11:34:19 127.0.0.1 (pid 715) :Pri:info: creation ../plugins/fabrique_auto/voir/prive/objets/ 2024-01-16 11:34:19 127.0.0.1 (pid 715) :Pri:info: creation ../plugins/fabrique_auto/voir/prive/objets/contenu/ 2024-01-16 11:34:19 127.0.0.1 (pid 715) :Pri:info: calcul (0.589 ms) [../plugins/auto/fabrique/v3.1.1/fabrique/prive/objets/contenu/objet.html] fabrique=array:1(version=7), paquet=array:21(prefixe=voir, nom='pour voir', slogan='rien a faire', …), objets=array:1(0=array:29), prefixe=voir, mprefixe=VOIR, exemples=on, les_id_objets=array:1(0=id_vide), les_types=array:1(0=vide), les_objets=array:1(0=vides), les_tables=array:1(0=spip_vides), les_tables_objets=array:1(0=spip_vides), objet=array:29(nom=vides, nom_singulier=vide, genre=masculin, …), id_objet=id_vide, type=vide, table=spip_vides, mobjet=VIDES, lobjet=vides, mtype=VIDE, mid_objet=ID_VIDE, lang=fr, date='2024-01-16 11:34:19', date_default=1, date_redac='2024-01-16 11:34:19', date_redac_default=1 (245 octets) 2024-01-16 11:34:19 127.0.0.1 (pid 715) :Pri:info: creation ../plugins/fabrique_auto/voir/prive/objets/liste/ 2024-01-16 11:34:19 127.0.0.1 (pid 715) :Pri:info: calcul (0.692 ms) [../plugins/auto/fabrique/v3.1.1/fabrique/prive/objets/liste/objets.html] fabrique=array:1(version=7), paquet=array:21(prefixe=voir, nom='pour voir', slogan='rien a faire', …), objets=array:1(0=array:29), prefixe=voir, mprefixe=VOIR, exemples=on, les_id_objets=array:1(0=id_vide), les_types=array:1(0=vide), les_objets=array:1(0=vides), les_tables=array:1(0=spip_vides), les_tables_objets=array:1(0=spip_vides), objet=array:29(nom=vides, nom_singulier=vide, genre=masculin, …), id_objet=id_vide, type=vide, table=spip_vides, mobjet=VIDES, lobjet=vides, mtype=VIDE, mid_objet=ID_VIDE, lang=fr, date='2024-01-16 11:34:19', date_default=1, date_redac='2024-01-16 11:34:19', date_redac_default=1 (1847 octets) 2024-01-16 11:34:19 127.0.0.1 (pid 715) :Pri:info: creation ../plugins/fabrique_auto/voir/prive/themes/ 2024-01-16 11:34:19 127.0.0.1 (pid 715) :Pri:info: creation ../plugins/fabrique_auto/voir/prive/themes/spip/ 2024-01-16 11:34:19 127.0.0.1 (pid 715) :Pri:info: creation ../plugins/fabrique_auto/voir/prive/themes/spip/images/ 2024-01-16 11:34:19 127.0.0.1 (pid 715) :Pri:info: include_spip inc/filtres_images.php non trouve 2024-01-16 11:34:19 127.0.0.1 (pid 715) :Pri:info: ajoute session ../tmp/sessions/1_c084aadfaab7a11afad7707ee56db644.php cookie 86400 2024-01-16 11:34:19 127.0.0.1 (pid 715) :Pri:debug: autoriser ecrire (Alain) ? 2024-01-16 11:34:19 127.0.0.1 (pid 715) :Pri:debug: autoriser_ecrire_dist(ecrire, , , Alain) : OK
Vola l’ensemble des logs.
Le premier messages peut être enlevé car il est sans intérêt.
Alain
Je parlais bien des logs PHP au niveau du serveur / hébergeur, pas des logos SPIP qui sont dans tmp/logs (et que tu m’a copié).
Bonjour ,
Grande patience !!
je pense que cela devrait te donner des infos plus pertinentes ?
Obtenus après l’annonce du problème et ce qui plante spip.
Deprecated: explode(): Passing null to parameter #2 ($string) of type string is deprecated in /var/www/html/spip/plugins/auto/fabrique/v3.1.1/formulaires/fabriquer_plugin.php on line 739 Fatal error: Uncaught ValueError: Path cannot be empty in /var/www/html/spip/ecrire/inc/flock.php:113 Stack trace: #0 /var/www/html/spip/ecrire/inc/flock.php(113): file_get_contents() #1 /var/www/html/spip/plugins/auto/fabrique/v3.1.1/formulaires/fabriquer_plugin.php(741): spip_file_get_contents() #2 /var/www/html/spip/plugins/auto/fabrique/v3.1.1/formulaires/fabriquer_plugin.php(631): fabriquer_miniature_png() #3 /var/www/html/spip/plugins/auto/fabrique/v3.1.1/formulaires/fabriquer_plugin.php(490): fabriquer_miniatures() #4 /var/www/html/spip/ecrire/public/aiguiller.php(288): formulaires_fabriquer_plugin_traiter_dist() #5 /var/www/html/spip/ecrire/index.php(70): traiter_formulaires_dynamiques() #6 {main} thrown in /var/www/html/spip/ecrire/inc/flock.php on line 113
A suivre
Alain
Effectivement on a une fatal erreurs, sur la recherche d’un fichier.
C’est à quel moment que ton formulaire plante ? c’est lequel d’ailleurs.
Je me demande s’il s’attend pas à trouver un logo/picto et que tu lui fourni pas -> ca plante (ce serrait un bug, mais ca me parait la meilleur piste pour l’instant...)
Bonsoir,
Je viens de tester avec un fichier image. Effectivement ça va jusqu’au bout mais la table spip_vides n’est pas initialisée dans la base de données.
le plugin a comme préfixe : voir
les erreurs spip au lancement de la création d’un enregistrement :
dans Message Erreur SQL 1146 Table 'spip.spip_vides' doesn't exist SELECT * FROM spip_vides WHERE id_vide=0 dans le squelette /var/www/html/spip/ecrire/inc/editer.php Dans la boucle : formulaires_editer_objet_charger(){ sql_fetsel(); } ligne : 242
J’ai cette même défaillance avec le plugin brèves qui ne crée pas la table.
Donc à suivre
Merci bien Alain
Bonjour,
Grace aux réponses que j’ai exploitées, je peux dire que « çà marche ».
J’en tire la leçon suivante par ordre de priorités :
1er mettre des logos
2e avoir la base mariadb avec le Type InnoDB et interclassement utf8mb4_general_ci
3e créer le plugin nouveau et l’activer
4e entrer une première donnée qui fait planter car il est possible que la table ne soit pas « présentée ».
5e utiliser la fonction de réparation de la base et alors tout rentre dans l’ordre la table est visible et active pour recevoir les futures données.
Merci aux patients débroussailleurs.
Alain
Répondre à ce message
Ajouter un commentaire
Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :
Merci d’avance pour les personnes qui vous aideront !
Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.
Suivre les commentaires : |