title: Laravel localhost works, but heroku gives 500 error
body: <p>I'm working in a project that needs to convert some data from excel to database. This is working fine in local host with laravel, but when goes to heroku, it gives me a 500 internal server error.</p>
  
  <p>I searched in heroku for something that point what could be, then I discovered that the heroku's database has 2 values inserted from the requests. So it means that the code loops twice, but then the error occurs.</p>
  
  <p>I tried to find the error in the code for 4 hours, and I didn't found what is going on...</p>
  
  <p>Here is the code:</p>
  
  <pre><code>public function insertFromExcel(){
  
          $excel = new \Maatwebsite\Excel\Facades\Excel();
  
          $data = $excel::load('../../../excel_files/relacao_5.xls', function ($reader) {
  
          })-&gt;get();
  
          foreach ($data as $row) {
  
  
              //-----------------------------------------Verifica Setor-------------------------------------
  
              if(isset($row['nome_setor'])){
                  $setor_id = DB::table('setor')-&gt;where('nome', '=', $row['nome_setor'])-&gt;pluck('id');
  
                  if ($setor_id == null) {
                      $setor_id = DB::table('setor')-&gt;insertGetId([
                          'nome' =&gt; $row['nome_setor']
                      ]);
                  }
              }
              else{
                  $setor_id = null;
              }
  
              //-----------------------------------------Verifica Funcionario--------------------------------
  
              $funcionario_id = DB::table('funcionario')-&gt;where('matricula', '=', $row['codfun'])-&gt;pluck('id');
  
  
  
              if ($funcionario_id === null) {
                  $funcionario_id = DB::table('funcionario')-&gt;insertGetId([
                      'nome' =&gt; $row['nome_func'],
                      'matricula' =&gt; $row['codfun'],
                      'pis_pasep' =&gt; $row['pis_pasep'],
                      'data_admisao' =&gt; $row['admissao'],
                      'setor_id' =&gt; $setor_id
                  ]);
              }
              else{
  
                  $funcionario_pis_pasep = DB::table('funcionario')-&gt;where('matricula', '=', $row['codfun'])-&gt;pluck('pis_pasep');
  
                  if($funcionario_pis_pasep == null || $funcionario_pis_pasep == 0){
                      DB::table('funcionario')
                          -&gt;where('id', $funcionario_id)
                          -&gt;update([
                              'pis_pasep' =&gt; $row['pis_pasep']
                          ]);
                  }
  
  
  
                  $funcionario_setor = DB::table('funcionario')-&gt;where('matricula', '=', $row['codfun'])-&gt;pluck('setor_id');
  
                  if($funcionario_setor == null){
                      DB::table('funcionario')
                          -&gt;where('id', $funcionario_id)
                          -&gt;update([
                              'setor_id' =&gt; $setor_id
                          ]);
                  }
              }
  
  
              //-----------------------------------------Verifica Cargos--------------------------------
  
              if (strpos($row['descrnivcarg'], "GERENTE") !== false) {
  
                  $gerente = DB::table('gerente')
                      -&gt;join('funcionario', 'gerente.funcionario_id', '=', 'funcionario.id')
                      -&gt;where('funcionario.id', '=', $funcionario_id)
                      -&gt;pluck('gerente.id');
  
                  if ($gerente == null) {
                      $user_id = DB::table('usuario')-&gt;insertGetId(['senha' =&gt; '12345', 'nivel' =&gt; 3]);
  
                      DB::table('gerente')-&gt;insert([
                          'funcionario_id' =&gt; $funcionario_id,
                          'usuario_id' =&gt; $user_id
                      ]);
                  }
              }
              if (strpos($row['descrnivcarg'], "COORDENADOR") !== false) {
  
                  $coordenador = DB::table('coordenador')
                      -&gt;join('funcionario', 'coordenador.funcionario_id', '=', 'funcionario.id')
                      -&gt;where('funcionario.id', '=', $funcionario_id)
                      -&gt;pluck('coordenador.id');
  
                  if ($coordenador == null) {
                      $user_id = DB::table('usuario')-&gt;insertGetId(['senha' =&gt; '12345']);
  
                      DB::table('coordenador')-&gt;insert([
                          'funcionario_id' =&gt; $funcionario_id,
                          'usuario_id' =&gt; $user_id
                      ]);
                  }
              }
              if (strpos($row['descrnivcarg'], "SUPERVISOR") !== false) {
  
                  $supervisor = DB::table('supervisor')
                      -&gt;join('funcionario', 'supervisor.funcionario_id', '=', 'funcionario.id')
                      -&gt;where('funcionario.id', '=', $funcionario_id)
                      -&gt;pluck('supervisor.id');
  
                  if ($supervisor == null) {
                      $user_id = DB::table('usuario')-&gt;insertGetId(['senha' =&gt; '12345', 'nivel' =&gt; 2]);
  
                      DB::table('supervisor')-&gt;insert([
                          'funcionario_id' =&gt; $funcionario_id,
                          'usuario_id' =&gt; $user_id
                      ]);
                  }
              }
              if (strpos($row['descrnivcarg'], "ESTAGIARIO") !== false) {
  
                  $estagiario = DB::table('estagiario')
                      -&gt;join('funcionario', 'estagiario.funcionario_id', '=', 'funcionario.id')
                      -&gt;where('funcionario.id', '=', $funcionario_id)
                      -&gt;pluck('estagiario.id');
  
                  if ($estagiario == null) {
                      $user_id = DB::table('usuario')-&gt;insertGetId(['senha' =&gt; '12345', 'nivel' =&gt; 1]);
  
                      DB::table('estagiario')-&gt;insert([
                          'funcionario_id' =&gt; $funcionario_id,
                          'usuario_id' =&gt; $user_id
                      ]);
                  }
              } else {
                  $cargo_id = DB::table('cargo')-&gt;where('nome', '=', $row['descrnivcarg'])-&gt;pluck('id');
  
                  if ($cargo_id == null) {
                      $cargo_id = DB::table('cargo')-&gt;insertGetId(['nome' =&gt; $row['descrnivcarg']]);
                  }
  
  
                  $operario = DB::table('operario')
                      -&gt;join('funcionario', 'operario.funcionario_id', '=', 'funcionario.id')
                      -&gt;where('operario.id', '=', $funcionario_id)
                      -&gt;pluck('operario.id');
  
                  if ($operario == null) {
  
                      DB::table('operario')-&gt;insert([
                          'funcionario_id' =&gt; $funcionario_id,
                          'cargo_id' =&gt; $cargo_id,
                      ]);
                  }
              }
          }
  
          $funcionario_db[] = DB::table('funcionario')-&gt;select('matricula', 'nome', 'data_admisao', 'pis_pasep')-&gt;get();
  
          return $funcionario_db;
  
      }
  </code></pre>