Joomladay francophone 2018 à Paris 18 et 19 mai

Ajouter un champs et faire apparaitre dans l'admin

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

  • Ajouter un champs et faire apparaitre dans l'admin

    Bonjour,

    J'ai suivi l'astuce du post N°115 http://forum.joomla.fr/showpost.php?...&postcount=115 pour Ajouter un champs dans Virtuemart 1.1
    Ca marche super, mais je voudrais faire apparaître ce nouveau champs dans la partie admin, plus précisemment sur le Bon de commande à imprimer (Il sagit du fichier order.order_printdetails.php)

    Merci
    Dernière édition par holanpan7 à 11/11/2009, 14h48

  • #2
    une p'tite idée?

    Merci

    Commentaire


    • #3
      Envoyé par holanpan7 Voir le message
      une p'tite idée?

      Merci
      Il faut dire dans quelle table tu as ajouter ton champs ???

      les fichiers, où peut être ton champs, sont variés car voici ce qu'il ajoute a ton fichier
      Code PHP:
      global $ps_order_status;
      require_once(
      CLASSPATH.'ps_checkout.php');
      require_once(
      CLASSPATH.'ps_userfield.php');
      require_once(
      CLASSPATH.'ps_product.php');
      $ps_product= new ps_product;

      $registrationfields ps_userfield::getUserFields('registration'false''truetrue );
      $shippingfields ps_userfield::getUserFields('shipping'false''truetrue ); 
      il y a aussi les appele aux tables
      #__{vm}_order_item
      #__{vm}_order_user_info
      #__{vm}_payment_method
      #__{vm}_orders
      .....

      Donc ou est ton champs ? dans quels tables ?

      par exemple il y a une boucle
      Code PHP:
      while ($dbcart->next_record()) 
      qui récupére le nom du produit,la référence ,...
      Code PHP:
      $dbcart->p("order_item_name");
      $dbcart->p("order_item_sku");
      ..... 
      donc si tu ne donne pas plus de précision du pourquoi de ton champs et l'origine , on pourra pas t'aider.
      http://www.st42.fr : Astuce et téléchargement d’extension Joomla! et virtuemart
      http://shop.st42.fr Catalogue extentions gratuit et Pro pour Virtuemart et Joomla

      Commentaire


      • #4
        Bonjour electrocity,

        J'ai suivi l'astuce du post N°115. Brievement ,j'ai ajouter un nouveau champs dans la table jos_vm_product, puis modifié les fichiers shop_browse_queries.php , shop.browse.php, product.product_form.php, shop.product_details.php et finalement ps_product.php

        Maintenant je voudrais faire apparaitre ce champs dans sur le Bon de commande à imprimer. Je crois qu'il y à d'autre fichiers à modifier...

        Merci de ton aide
        Dernière édition par holanpan7 à 08/11/2009, 22h16

        Commentaire


        • #5
          dans le fichier cherche
          Code PHP:
                  <tr align="left"> 
                    <th><?php echo $VM_LANG->_('PHPSHOP_ORDER_PRINT_QTY'?></th>
                    <th><?php echo $VM_LANG->_('PHPSHOP_ORDER_PRINT_NAME'?></th>
                    <th><?php echo $VM_LANG->_('PHPSHOP_ORDER_PRINT_SKU'?></th>
                    <th><?php echo $VM_LANG->_('PHPSHOP_ORDER_PRINT_PRICE'?></th>
          et ajout la ou ça t'arrange pour afficher l'entête de colonne
          Code PHP:
          <th><?php  echo $VM_LANG->_('PHPSHOP_PRODUCT_FORM_ALPHA'?></th>
          quelques ligne plus loin c'est l'affichage des champs:
          Code PHP:
                    <td><?php $dbcart->p("product_quantity"); ?></td>
                    <td><?php $dbcart->p("order_item_name"); echo " <font size=\"-2\">" $dbcart->f("product_attribute") . "</font>";?></td>
                    <td><?php $dbcart->p("order_item_sku"); ?></td>
          pour faire simple j'ai mis tous le code ensemble a copier entre </td> et le nouveau <td>
          Code PHP:
          <?php $dblapha = new ps_DB;        
          $q "SELECT product_alpha FROM #__{vm}_product WHERE product_id='$product_id";
                  
          $dbalpha->query$q );
          $dbalpha->next_record();?>
          <td><?php $dbalpha->p("product_alpha"); ?></td>
          http://www.st42.fr : Astuce et téléchargement d’extension Joomla! et virtuemart
          http://shop.st42.fr Catalogue extentions gratuit et Pro pour Virtuemart et Joomla

          Commentaire


          • #6
            Salut electrocity,

            Merci pour ton aide, mais malheureusement je n'ai pas réussi à faire apparaître le champs.
            L'entête de colonne que j'avais mis dans administrator\components\com_virtuemart\languages\ product\french.php ne s'affiche pas.
            J'ai du le rajouter dans administrator\components\com_virtuemart\languages\ order\french.php pour le faire afficher

            Puis j'ai ajouter ton code (où j'ai modifié un peu car il y avait une faute de frappe dans le premier dbalpha et un oublie de ' dans '$product_id'" je crois)
            Code PHP:
            <?php $dbalpha = new ps_DB;        
            $q "SELECT product_alpha FROM #__{vm}_product WHERE product_id='$product_id' ";
                    
            $dbalpha->query$q );
            $dbalpha->next_record();?>
            <td><?php $dbalpha->p("product_alpha"); ?></td>

            doit y avoir truc tout bête qui manque. . .
            Dernière édition par holanpan7 à 09/11/2009, 13h13

            Commentaire


            • #7
              Il y a surement des fotes car je peut pas faire la requête exacte je n'ai pas ce champs sur mes sites.
              Et effectivement il y a un fichier Order/french.php
              Je t'ai expliqué le principe. essaye de faire une requête SQL bidon sur ta table avec ce champs et adapte ton code des que le résultat est bon.

              exemple je veut la description courte du produit 950 qui est dans la table jos_vm_product:
              Code HTML:
              SELECT product_s_desc FROM jos_vm_product WHERE product_id = 950
              il me sort ceci qui est correct
              Emotion Programmable, Vertical Blanc 2000W
              tradution pour requete direct dans joomla
              Code HTML:
              SELECT product_s_desc FROM #__{vm}_product WHERE product_id = 950
              J'ai mis 950 pour simuler le $product_id
              Tu peut aussi voir si ta variable existe bien avec
              Code HTML:
              echo $product_id ;
              juste avant la requête
              http://www.st42.fr : Astuce et téléchargement d’extension Joomla! et virtuemart
              http://shop.st42.fr Catalogue extentions gratuit et Pro pour Virtuemart et Joomla

              Commentaire


              • #8
                dans
                Code PHP:
                <?php $dbalpha = new ps_DB;        
                $q "SELECT product_alpha FROM #__{vm}_product WHERE product_id='$product_id' ";
                        
                $dbalpha->query$q );
                $dbalpha->next_record();?>
                <td><?php $dbalpha->p("product_alpha"); ?></td>
                Lorsque je remplace le $product_id par 38 par example ça marche, la variable apparait. Mais lorsque je remet $product_id ça marche plus.

                Je m'arrache les cheveux!...

                Commentaire


                • #9
                  Envoyé par holanpan7 Voir le message
                  dans
                  Code PHP:
                  <?php $dbalpha = new ps_DB;        
                  $q "SELECT product_alpha FROM #__{vm}_product WHERE product_id='$product_id' ";
                          
                  $dbalpha->query$q );
                  $dbalpha->next_record();?>
                  <td><?php $dbalpha->p("product_alpha"); ?></td>
                  Lorsque je remplace le $product_id par 38 par example ça marche, la variable apparait. Mais lorsque je remet $product_id ça marche plus.

                  Je m'arrache les cheveux!...
                  essaye un
                  Code PHP:
                  echo 'mon id de produit : '.$product_id 
                  pour voir si tu as bien cette variable qui arrive, peut être que cette variable n'est pas récupéré, tous simplement.
                  http://www.st42.fr : Astuce et téléchargement d’extension Joomla! et virtuemart
                  http://shop.st42.fr Catalogue extentions gratuit et Pro pour Virtuemart et Joomla

                  Commentaire


                  • #10
                    C'est normal , essaye ceci :
                    <?php $dbalpha = new ps_DB;
                    $alphaid=$dbcart->p("product_id");
                    $q = "SELECT product_alpha FROM #__{vm}_product WHERE product_id='$alphaid' ";
                    $dbalpha->query( $q );
                    $dbalpha->next_record();?>
                    <td><?php $dbalpha->p("product_alpha"); ?></td>
                    http://www.st42.fr : Astuce et téléchargement d’extension Joomla! et virtuemart
                    http://shop.st42.fr Catalogue extentions gratuit et Pro pour Virtuemart et Joomla

                    Commentaire


                    • #11
                      Envoyé par electrocity Voir le message
                      essaye un
                      Code PHP:
                      echo 'mon id de produit : '.$product_id 
                      pour voir si tu as bien cette variable qui arrive, peut être que cette variable n'est pas récupéré, tous simplement.
                      Bonjour electrocity,

                      cela me donne un mon id de produit : 0

                      Commentaire


                      • #12
                        Envoyé par electrocity Voir le message
                        C'est normal , essaye ceci :
                        Cela me donne "38" le numéro du produit_id.

                        Commentaire


                        • #13
                          prend tous le code
                          Code PHP:
                          <?php $dbalpha = new ps_DB;
                          $alphaid=$dbcart->p("product_id");
                          $q "SELECT product_alpha FROM #__{vm}_product WHERE product_id='$alphaid' ";
                          $dbalpha->query$q );
                          $dbalpha->next_record();?>
                          <td><?php $dbalpha->p("product_alpha"); ?></td>
                          et colle le dans ton fichier d'origine bien sur en respectant les <td></td>
                          http://www.st42.fr : Astuce et téléchargement d’extension Joomla! et virtuemart
                          http://shop.st42.fr Catalogue extentions gratuit et Pro pour Virtuemart et Joomla

                          Commentaire


                          • #14
                            c'est bien ce que j'ai fait. J'ai fais un test et le code me retourne 38 qui est le numéro du produit_id.

                            Commentaire


                            • #15
                              Envoyé par holanpan7 Voir le message
                              c'est bien ce que j'ai fait. J'ai fais un test et le code me retourne 38 qui est le numéro du produit_id.
                              allez dernier test

                              Code PHP:
                              <?php $dbalpha = new ps_DB;
                              $alphaid=$dbcart->f("product_id");
                              $q "SELECT product_alpha FROM #__{vm}_product WHERE product_id='$alphaid' ";
                              $dbalpha->query$q );
                              $dbalpha->next_record();?>
                              <td><?php $dbalpha->p("product_alpha"); ?></td>
                              http://www.st42.fr : Astuce et téléchargement d’extension Joomla! et virtuemart
                              http://shop.st42.fr Catalogue extentions gratuit et Pro pour Virtuemart et Joomla

                              Commentaire

                              Annonce

                              Réduire
                              1 sur 2 < >

                              C'est [Réglé] et on n'en parle plus ?

                              A quoi ça sert ?
                              La mention [Réglé] permet aux visiteurs d'identifier rapidement les messages qui ont trouvé une solution.

                              Merci donc d'utiliser cette fonctionnalité afin de faciliter la navigation et la recherche d'informations de tous sur le forum.

                              Si vous deviez oublier de porter cette mention, nous nous permettrons de le faire à votre place... mais seulement une fois
                              Comment ajouter la mention [Réglé] à votre discussion ?
                              1 - Aller sur votre discussion et éditer votre premier message :


                              2 - Cliquer sur la liste déroulante Préfixe.

                              3 - Choisir le préfixe [Réglé].


                              4 - Et voilà… votre discussion est désormais identifiée comme réglée.

                              2 sur 2 < >

                              Assistance au forum - Outil de publication d'infos de votre site

                              Compatibilité: PHP 4.1,PHP4, 5, 6DEV MySQL 3.2 - 5.5 MySQLi from 4.1 ( @ >=PHP 4.4.9)

                              Support Version de Joomla! : | J!3.0 | J!2.5.xx | J!1.7.xx | J!1.6.xx | J1.5.xx | J!1.0.xx |

                              Version française (FR) D'autres versions sont disponibles depuis la version originale de FPA

                              UTILISER À VOS PROPRES RISQUES :
                              L'exactitude et l'exhaustivité de ce script ainsi que la documentation ne sont pas garanties et aucune responsabilité ne sera acceptée pour tout dommage, questions ou confusion provoquée par l'utilisation de ce script.

                              Problèmes connus :
                              FPA n'est actuellement pas compatible avec des sites Joomla qui ont eu leur fichier configuration.php déplacé en dehors du répertoire public_html.

                              Installation :

                              1. Téléchargez l'archive souhaitée : http://afuj.github.io/FPA/

                              Archive zip : https://github.com/AFUJ/FPA/zipball/master

                              2. Décompressez le fichier de package téléchargé sur votre propre ordinateur (à l'aide de WinZip ou d'un outil de décompression natif).

                              3. Lisez le fichier LISEZMOI inclus pour toutes les notes de versions spécifiques.

                              4. LIRE le fichier de documentation inclus pour obtenir des instructions d'utilisation détaillées.

                              5. Téléchargez le script fpa-fr.php à la racine de votre site Joomla!. C'est l'endroit que vous avez installé Joomla et ce n'est pas la racine principale de votre serveur. Voir les exemples ci-dessous.

                              6. Exécutez le script via votre navigateur en tapant: http:// www. votresite .com/ fpa-fr.php
                              et remplacer www. votresite .com par votre nom de domaine


                              Exemples:
                              Joomla! est installé dans votre répertoire web et vous avez installé la version française du fichier FPA:
                              Télécharger le script fpa-fr.php dans: /public_html/
                              Pour executer le script: http://www..com/fpa-fr.php

                              Joomla! est installé dans un sous-répertoire nommé "cms" et vous avez installé la version française du fichier FPA:
                              Télécharger le script fpa-fr.php dans: /public_html/cms/
                              Pour executer le script: http://www..com/cms/fpa-fr.php

                              En raison de la nature très sensible de l'information affichée par le script FPA, il doit être retiré immédiatement du serveur après son utilisation.

                              Pour supprimer le script de votre site, utilisez le lien de script de suppression fourni en haut de la page du script. Si le lien de suppression échoue pour supprimer le script, utilisez votre programme FTP pour le supprimer manuellement ou changer le nom une fois que le script a généré les données du site et le message publié sur le forum. Si le script est toujours présent sur le site, il peut être utilisé pour recueillir suffisamment d'informations pour pirater votre site. Le retrait du script empêche des étrangers de l'utiliser pour jeter un oeil à la façon dont votre site est structuré et de détecter les défauts qui peuvent être utilisé à vos dépends.
                              Voir plus
                              Voir moins
                              Travaille ...
                              X