バージョン選択

フォーラム

メニュー

オンライン状況

76 人のユーザが現在オンラインです。 (72 人のユーザが フォーラム を参照しています。)
登録ユーザ: 0
ゲスト: 76
もっと...

サイト内検索

質問 > 管理機能 > PHPから商品登録を行なう方法

管理機能

新規スレッドを追加する

フラット表示 前のトピック | 次のトピック
投稿者 スレッド
shimbo
投稿日時: 2018/11/14 13:20
対応状況: −−−
半人前
登録日: 2018/10/5
居住地:
投稿: 27
Re: PHPから商品登録を行なう方法
      public function addProduct(Application $app, Request $request){
                
        $install_dir = 'https://';
        //(中略)

        $Product = new \Eccube\Entity\Product();
        $ProductClass = new \Eccube\Entity\ProductClass();
        $ProductType = new \Eccube\Entity\Master\ProductType();
        $Disp = $app['eccube.repository.master.disp']->find(\Eccube\Entity\Master\Disp::DISPLAY_HIDE);

        $Product
        ->setDelFlg(Constant::DISABLED)
        ->addProductClass($ProductClass)
        ->setStatus($Disp);
        $ProductClass
        ->setDelFlg(Constant::DISABLED)
        ->setStockUnlimited(true)
        ->setProduct($Product)
        ->setPrice02IncTax($price);
        $ProductStock = new \Eccube\Entity\ProductStock();
        $ProductClass->setProductStock($ProductStock);
        $ProductStock->setProductClass($ProductClass);

        //formに値をセットする
        $builder = $app['form.factory']
        ->createBuilder('admin_product', $Product);
        $form = $builder->getForm();

        // 名前登録
        $form['name']->setData($longname_en);

        // 詳細登録
        $form['description_detail']->setData($detail_en);

        // カテゴリ登録
        $categories = array();
        $ProductCategories = $Product->getProductCategories();
        foreach ($ProductCategories as $ProductCategory) {
            /* @var $ProductCategory \Eccube\Entity\ProductCategory */
            $categories[] = $ProductCategory->getCategory();
        }
        $form['Category']->setData($categories);
        // $form['Category']->setData($posted_category);

        // タグ登録
        $Tags = array();
        $ProductTags = $Product->getProductTag();
        foreach ($ProductTags as $ProductTag) {
            $Tags[] = $ProductTag->getTag();
        }
        $form['Tag']->setData($Tags);
        // 商品登録開始
        $Product = $form->getData();
        $app['orm.em']->persist($Product);

        $app['orm.em']->flush();

        return new Response('', Response::HTTP_OK, array('Content-Type' => 'text/plain; charset=utf-8'));
    }


いろいろ教えて頂いた甲斐あって、なんとかPOSTされたデータを保存するところまで書きました。しかしながら、postでデータを投げてもサーバー500が戻ってきてしまいます。
単体でGETでURLを叩いた時には、「Column 'name' cannot be null」が表示されるので、データの渡し方の問題なのかなと思っておりますが、何か私のコードで見落としがあるでしょうか? $formへの値のセットが間違っているのかとも思うのですが……?

フラット表示 前のトピック | 次のトピック


題名 投稿者 日時
   PHPから商品登録を行なう方法 shimbo 2018/11/12 11:30
     Re: PHPから商品登録を行なう方法 red 2018/11/12 17:49
       Re: PHPから商品登録を行なう方法 shimbo 2018/11/13 11:49
     Re: PHPから商品登録を行なう方法 sw_tm 2018/11/13 10:00
       Re: PHPから商品登録を行なう方法 shimbo 2018/11/13 11:57
         Re: PHPから商品登録を行なう方法 sw_tm 2018/11/13 13:17
           Re: PHPから商品登録を行なう方法 shimbo 2018/11/14 12:18
             Re: PHPから商品登録を行なう方法 sw_tm 2018/11/14 13:22
               Re: PHPから商品登録を行なう方法 shimbo 2018/11/14 15:02
                 Re: PHPから商品登録を行なう方法 sw_tm 2018/11/14 16:14
                   Re: PHPから商品登録を行なう方法 shimbo 2018/11/15 10:21
                     Re: PHPから商品登録を行なう方法 shimbo 2018/11/15 12:08
   » Re: PHPから商品登録を行なう方法 shimbo 2018/11/14 13:20

 



ログイン


EC-CUBE公式 Amazon Payプラグイン

統計情報

総メンバー数は88,865名です
総投稿数は109,998件です

投稿数ランキング

1
seasoft
7367
2
468
3217
3
AMUAMU
2712
4
nanasess
2313
5
umebius
2085
6
yuh
1819
7
h_tanaka
1646
8
red
1570
9
mcontact
1295
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
799
14 ramrun 789
15 karin 689
16 sumida 641
17
homan
633
18 DELIGHT 572
19
patapata
502
20
flealog
485


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.