La table de mon composant n'est pas créé lors de l'installation

Réduire
X
 
  • Filtrer
  • Heure
  • Afficher
Tout effacer
nouveaux messages

  • [RÉGLÉ] La table de mon composant n'est pas créé lors de l'installation

    Bonjour !

    Je suis en train de développer un composant Joomla (version 5.x). Lorsque je l'installe tout semble visiblement bien se passer. Seulement lorsque je vais voir côté base de données, je me rends compte que la table du composant n'est pas créée du tout. J'ai tout vérifié mais je n'arrive pas à détecter la cause du problème. Pour faciliter l'assistance je pose ici le manifest. Si besoin d'une autre ressource, je reste attentif et réactif.

    Code HTML:
    <?xml version="1.0" encoding="utf-8"?>
    <extension type="component" version="5.0" method="upgrade">
    
    <name>COM_ADBOARD</name>
    <creationDate>2025-04-08</creationDate>
    <author>Etienne Modeste</author>
    <authorUrl>https://internis.dev</authorUrl>
    <copyright>EKAMBI Etienne</copyright>
    <license>GPL v3</license>
    <version>0.0.8</version>
    <description>
    COM_ADBOARD_DESC
    </description>
    <namespace path="src/">Internis\Component\AdBoard</namespace>
    
    <files folder="site/">
    <folder>language</folder>
    <folder>src</folder>
    <folder>tmpl</folder>
    <folder>assets</folder>
    </files>
    
    <languages>
    <language tag="en-GB">site/language/en-GB/en-GB.com_adboard.ini</language>
    <language tag="fr-FR">site/language/fr-FR/fr-FR.com_adboard.ini</language>
    </languages>
    
    <administration>
    <menu link="index.php?option=com_adboard">COM_ADBOARD</menu>
    <files folder="admin/">
    <folder>language</folder>
    <folder>services</folder>
    <folder>sql</folder>
    <folder>src</folder>
    <folder>views</folder>
    <folder>models</folder>
    </files>
    
    <languages>
    <language tag="en-GB">admin/language/en-GB/en-GB.com_adboard.ini</language>
    <language tag="en-GB">admin/language/en-GB/en-GB.com_adboard.sys.ini</language>
    <language tag="fr-FR">admin/language/fr-FR/fr-FR.com_adboard.ini</language>
    <language tag="fr-FR">admin/language/fr-FR/fr-FR.com_adboard.sys.ini</language>
    </languages>
    
    </administration>
    
    <install>
    <sql>
    <file driver="mysql" charset="utf-8">sql/install.mysql.utf8.sql</file>
    </sql>
    </install>
    <uninstall>
    <sql>
    <file driver="mysql" charset="utf8">sql/uninstall.mysql.utf8.sql</file>
    </sql>
    </uninstall>
    <update>
    <schemas>
    <schemapath type="mysql">sql/updates/mysql</schemapath>
    </schemas>
    </update>
    
    <media destination="com_adboard" folder="media/com_adboard" />
    
    </extension>
    Merci pour vos assistance!
    Agence web - Internis Group - Développement Joomla! - Développement sur mesure de thèmes, composants et modules - Audit ergonomique / Consultations SEO - Rédaction web - Référencement

  • #2
    Quel est le contenu de
    Code:
    sql/install.mysql.utf8.sql
    ?
    Jean-Marie Simonet / infograf768
    Joomla co-fondateur.
    Sauf demande explicite de ma part, merci de ne pas utiliser de Message Privé pour poser des questions. Le forum est là pour ça.

    Commentaire


    • #3
      Voici le contenu du script d'install:

      Code:
      DROP TABLE IF EXISTS `#__adboard_requests`;
      
      CREATE TABLE IF NOT EXISTS `#__adboard_requests` (
      `id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
      
      -- Infos générales de l'utilisateur
      `user_id` INT UNSIGNED NOT NULL,
      `user_type` ENUM('individual', 'company') NOT NULL DEFAULT 'individual',
      
      -- Informations spécifiques du formulaire
      `member_status` VARCHAR(255) DEFAULT NULL,
      `passport_training` VARCHAR(255) DEFAULT NULL,
      `declared_status` VARCHAR(255) DEFAULT NULL,
      `insurance_rcp` TINYINT(1) DEFAULT NULL,
      `insurance_name` VARCHAR(255) DEFAULT NULL,
      
      -- Documents (fichiers uploadés)
      `cv_europass` VARCHAR(512) DEFAULT NULL,
      `attestation_secte` VARCHAR(512) DEFAULT NULL,
      `casier_judiciaire` VARCHAR(512) DEFAULT NULL,
      `diplomas_obtained` VARCHAR(512) DEFAULT NULL,
      `training_program_followed` VARCHAR(512) DEFAULT NULL,
      `practical_experience_years` INT DEFAULT NULL,
      `trainer_experience_years` INT DEFAULT NULL,
      `students_per_training` INT DEFAULT NULL,
      `trainer_course_program` VARCHAR(512) DEFAULT NULL,
      `other_jobs` TEXT DEFAULT NULL,
      
      -- Validation et commentaire par document
      `cv_europass_status` ENUM('pending', 'approved', 'rejected') DEFAULT 'pending',
      `cv_europass_comment` TEXT DEFAULT NULL,
      `cv_europass_validated_at` DATETIME DEFAULT NULL,
      
      `attestation_secte_status` ENUM('pending', 'approved', 'rejected') DEFAULT 'pending',
      `attestation_secte_comment` TEXT DEFAULT NULL,
      `attestation_secte_validated_at` DATETIME DEFAULT NULL,
      
      `casier_judiciaire_status` ENUM('pending', 'approved', 'rejected') DEFAULT 'pending',
      `casier_judiciaire_comment` TEXT DEFAULT NULL,
      `casier_judiciaire_validated_at` DATETIME DEFAULT NULL,
      
      `diplomas_obtained_status` ENUM('pending', 'approved', 'rejected') DEFAULT 'pending',
      `diplomas_obtained_comment` TEXT DEFAULT NULL,
      `diplomas_obtained_validated_at` DATETIME DEFAULT NULL,
      
      `training_program_followed_status` ENUM('pending', 'approved', 'rejected') DEFAULT 'pending',
      `training_program_followed_comment` TEXT DEFAULT NULL,
      `training_program_followed_validated_at` DATETIME DEFAULT NULL,
      
      `trainer_course_program_status` ENUM('pending', 'approved', 'rejected') DEFAULT 'pending',
      `trainer_course_program_comment` TEXT DEFAULT NULL,
      `trainer_course_program_validated_at` DATETIME DEFAULT NULL,
      
      -- Statut global de la demande
      `request_status` ENUM('pending', 'approved', 'rejected') DEFAULT 'pending',
      `request_comment` TEXT DEFAULT NULL,
      `request_validated_at` DATETIME DEFAULT NULL,
      
      -- Timestamps
      `created` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
      `modified` DATETIME NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP,
      
      PRIMARY KEY (`id`),
      KEY `idx_user_id` (`user_id`),
      KEY `idx_request_status` (`request_status`)
      ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
      Agence web - Internis Group - Développement Joomla! - Développement sur mesure de thèmes, composants et modules - Audit ergonomique / Consultations SEO - Rédaction web - Référencement

      Commentaire


      • #4
        J'ajoute que j'arrive à exécuter ce script sql dans phpmyadmin sans aucune erreur. Pas d'erreur dans les logs non plus. Du coup, je ne sais pas trop ce qui n'est pas bien fait.
        Agence web - Internis Group - Développement Joomla! - Développement sur mesure de thèmes, composants et modules - Audit ergonomique / Consultations SEO - Rédaction web - Référencement

        Commentaire


        • #5
          Hello.

          Tu n'as absolument aucun message d'erreur (les erreurs sont activées je suppose) ?

          Es-tu sûr d'être en install et pas en maj (voir s'il existe un enregistrement dans la table #__schemas avec l'id de ton extension dans #__extensions)

          Si tu es en install, quelques pistes :
          • Es-tu sûr que le fichier .sql est bien chargé sur le serveur et que la casse est bonne (pas une majuscule qui se balade)
          • Le charset met utf8 et pas utf-8
          • Fait une erreur de syntaxe dans ton sql, afin de provoquer l'affichage d'une erreur et donc voir si l'installateur l'exécute ou pas le .sql
          Si tu es en maj vérifie ton numéro de version du fichier x.y.z.sql en sql/updates/mysql en admin de ton extension afin qu'il soit bien > à celui dans la table #__schemas (le numéro de version au niveau de la DB n'est pas nécessairement en corrélation avec le numéro de version de l'extension, défini par le tag version de ton manifest).
          Dernière édition par roland_d_alsace à 28/04/2025, 08h24
          infograf768 aime ceci.
          A tous les utilisateurs de Joomla du très Grand Est de la France et du Jura suisse
          Rejoignez le Joomla Users Groupe Alsace...
          roland_d_alsace va-t-il devenir roland_du_grand_est ?

          Commentaire


          • #6
            J'ai trouvé ce qui était en cause et le problème est résolu. dans la balise install le charset était utf-8 au lieu de utf8.

            Merci pour vos assistances.
            Agence web - Internis Group - Développement Joomla! - Développement sur mesure de thèmes, composants et modules - Audit ergonomique / Consultations SEO - Rédaction web - Référencement

            Commentaire

            Annonce

            Réduire
            Aucune annonce pour le moment.

            Partenaire de l'association

            Réduire

            Hébergeur Web PlanetHoster
            Travaille ...
            X