2016-10-05 1 views
2

私はファイル形式をチェックした後、ExcelがDBにファイルインポートしようとしています、私が正常に行われてきた、私は唯一のパート問題が発生すると、ビューページにエラーメッセージまたは成功メッセージが返されます。戻る戻るエクセル内で作業を行い::負荷()関数:Laravel 4.2

マイコントローラー ::

Excel::load(Input::file('datafile'), function ($reader) use($attr_array) { 

      ... 

      //IF DATA MATCH 

      if($data_match == 'true') 
      {     
        ... 

        foreach ($reader->toArray() as $row) { 

         $Pdt_data->slug = Util::uniqueSlug($row['attr_name_value'], 'Product'); 
         $rem_value['slug'] = $Pdt_data->slug; 
         $resultant = array_merge($rem_value, $row); 

         //INSERT INTO DATABASE 
         Product::firstOrCreate($resultant); 
        } 
        \Session::flash('success', 'Data uploaded successfully.'); 
        return Redirect::back();     
      }    
      //IF DATA DOES NOT MATCH 
      else 
      {     
       \Session::flash('error', 'You Are Trying To Import File Of Different Category!'); 
        return Redirect::back(); 
      } 
     }); 

私は任意のヘルプは高く評価されるだろう、重複した質問で何の助けがなかったです。

答えて

2

私は最終的にすることで、この問題を自分で解決している:Excelの機能

  • 外の変数を定義する

    • If条件
    • に真または偽の変数の&
    • 設定値で機能するためにそれを渡します
    • Excelの外からのURLへのリダイレクトは、以前に設定された値に基づいて機能します。

    更新されたコード:

    $importstatus = ''; //DEFINING VARIABLE OUTSIDE EXCEL FUNCTION 
    
    Excel::load(Input::file('datafile'), function ($reader) use($attr_array) { 
    
          ... 
    
          //IF DATA MATCH 
    
          if($data_match == 'true') 
          {     
            ... 
    
            foreach ($reader->toArray() as $row) { 
    
             $Pdt_data->slug = Util::uniqueSlug($row['attr_name_value'], 'Product'); 
             $rem_value['slug'] = $Pdt_data->slug; 
             $resultant = array_merge($rem_value, $row); 
    
             //INSERT INTO DATABASE 
             Product::firstOrCreate($resultant); 
            } 
            \Session::flash('success', 'Data uploaded successfully.'); 
            $importstatus = 'fine'; //SETTING A VARIABLE VALUE    
          }    
          //IF DATA DOES NOT MATCH 
          else 
          {     
           \Session::flash('error', 'You Are Trying To Import File Of Different Category!'); 
            $importstatus = 'error'; //SETTING A VARIABLE VALUE 
          } 
         }); 
    
    //CHECK VARIABLE VALUE FOR DECISION 
    if ($importstatus == 'fine') { 
           \Session::flash('success', 'Data uploaded successfully.'); 
           return Redirect::back(); 
          } else { 
           \Session::flash('error', 'You are trying to import file of Different Category!'); 
           return Redirect::back(); 
          } 
    
  • 関連する問題