Jump to content

Création de produit depuis un module


Recommended Posts

Bonjour, je travaille actuellement sur un module de dépôt/vente, toute la partie gestion du dépôt est faite et pour plus de facilité à l'utilisation de ce module je pensai mettre en place la création de produit directement depuis la page d'administration du module, c'est à dire qu'en cliquant sur une demande de dépôt il y aurait un renvoi vers la fiche produit pré rempli ou carrément la création du produit avec les images associés.

Si quelqu'un a une idée ou une piste à suivre pour y arriver je suis preneur sinon je finirai bien par trouver :)

Merci d'avance !

Link to comment
Share on other sites

Salut,
Comme pour tout objet presta :

Nouvelle Instance :

$myprod = new Product();




on remplit ses propriétés :

$myprod->price = ... 
$myprod->name ($idlang) = ....
.....
....



enfin on l'enregistre dans la bdd (méthode héritée de ObjectModel) :

$myprod->save();
/* ou encore , ça fait exactement la même chose : */
$myprod->add();
/* ps: pas les deux en même temps sinon tu as deux produits dans la bdd .... */

Link to comment
Share on other sites

Merci :)
Je suppose que les images sont aussi dans les attributs ou peut être une fonction... je vais fouiller la classe concerné !

[EDIT]

Petit soucis :
je ne comprend pas pourquoi je ne peux pas accéder à la variable _DB_PREFIX_ dans une seconde classe que j'ai fais pour mon formulaire :

if (!defined('_CAN_LOAD_FILES_'))
   exit;

class DepositModule extends ObjectModel{

   /**
    * Get customer products
    * @param integer
    * @return string
    */
   public function _getCustomerProducts($customer_id, $type){
       if (!$result = Db::getInstance()->ExecuteS('SELECT * FROM '._DB_PREFIX_.'deposit_products WHERE '.$customer_id.' = deposit_customer AND deposit_type ='.$type))
            return false;
       return $result;
   }

   /**
    * Get all manufacturers/brands
    * @return array
    */
   public function _getAllBrand(){
       if (!$result = Db::getInstance()->ExecuteS('SELECT name, id_manufacturer FROM '._DB_PREFIX_.'_manufacturer WHERE active = 1 ORDER BY name ASC'))
           return false;
       return $result;
   }
}



Il faut une déclaration dans la classe du module ou quelque chose dans le genre ?

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...