多次上传有时无法成功上传

I have a function to upload multiple files, but sometimes file(s) is not uploaded but path is successfully added to database. i am not sure what is the ptoblem. i use function 'times()' to make it unique is this the root of the problem ?

i already tested it and it work successfully, but when its implemented sometimes the file doesnt uploaded successfully

if ($_FILES["lampiran"]["name"] != NULL) {

    $config = array();
    $ext = array();
    $records = array();

    $file_name = "Plan_".time();
    $files = $_FILES['lampiran'];
    $config['upload_path'] = "./uploads/Planning/attachment";
    $config['allowed_types'] = '*';

    foreach ($_FILES['lampiran']['name'] as $key => $value) {
        $ext[]= pathinfo($_FILES['lampiran']['name'][$key], PATHINFO_EXTENSION);
    }

    $cpt = count ($_FILES['lampiran']['tmp_name']);
        for($i=0; $i<$cpt; $i++){


        $_FILES['lampiran']['name']= $file_name.$i.'.'.$ext[$i];
        $_FILES['lampiran']['type']= $files['type'][$i];
        $_FILES['lampiran']['tmp_name']= $files['tmp_name'][$i];
        $_FILES['lampiran']['error']= $files['error'][$i];
        $_FILES['lampiran']['size']= $files['size'][$i];

        $records[] = $config['upload_path'].'/'.$_FILES['lampiran']['name'];

        $this->upload->initialize($config);
        if ( ! $this->upload->do_upload('lampiran'))
        {
            $error = array('error' => $this->upload->display_errors());
            print_r($error);

                        // $this->load->view('upload_form', $error);
        }

    }

    $pile = implode(";", $records);

    } else {
        $pile = NULL;
    }

Use $records in else condition also make error array than, Like

if ( ! $this->upload->do_upload('lampiran'))
{
    $error[] = $this->upload->display_errors();
}else{
    $upload_data = $this->upload->data();
    $records[] = $config['upload_path'].'/'.$upload_data['file_name'];
}

Here you will get all errors in $error and uploaded files in records.