Ознакомьтесь с URL-адресами, которые помогут вам понять больше
Code Project ссылка
https://www.codeproject.com/Articles/36482/How-to-Create-Google-Calendar-Events-Using-NET
[112 ] https://www.codeproject.com/Articles/565032/Google-Calendar-v-Integration-in-ASP-NET-Create-ed
Мне наконец удалось заставить его работать с вашей помощью!
Вот мой код:
function do_upload()
{
$this->load->library('upload');
$files = Мне наконец удалось заставить его работать с вашей помощью!
Вот мой код:
[110] Спасибо, ребята!
FILES;
$cpt = count( Мне наконец удалось заставить его работать с вашей помощью!
Вот мой код:
[110] Спасибо, ребята!
FILES['userfile']['name']);
for($i=0; $i<$cpt; $i++)
{
Мне наконец удалось заставить его работать с вашей помощью!
Вот мой код:
[110] Спасибо, ребята!
FILES['userfile']['name']= $files['userfile']['name'][$i];
Мне наконец удалось заставить его работать с вашей помощью!
Вот мой код:
[110] Спасибо, ребята!
FILES['userfile']['type']= $files['userfile']['type'][$i];
Мне наконец удалось заставить его работать с вашей помощью!
Вот мой код:
[110] Спасибо, ребята!
FILES['userfile']['tmp_name']= $files['userfile']['tmp_name'][$i];
Мне наконец удалось заставить его работать с вашей помощью!
Вот мой код:
[110] Спасибо, ребята!
FILES['userfile']['error']= $files['userfile']['error'][$i];
Мне наконец удалось заставить его работать с вашей помощью!
Вот мой код:
[110] Спасибо, ребята!
FILES['userfile']['size']= $files['userfile']['size'][$i];
$this->upload->initialize($this->set_upload_options());
$this->upload->do_upload();
}
}
private function set_upload_options()
{
//upload an image options
$config = array();
$config['upload_path'] = './Images/';
$config['allowed_types'] = 'gif|jpg|png';
$config['max_size'] = '0';
$config['overwrite'] = FALSE;
return $config;
}
Спасибо, ребята!
В codeigniter нет предопределенного метода для загрузки нескольких файлов за один раз, но вы можете отправить файл в массив и загрузить их один за другим.
. См. Здесь: Это лучший вариант для загрузки нескольких файлов в codeigniter 3.0.1 с предварительным просмотром https://codeaskbuzz.com/how-to-upload-multiple-file-in-codeigniter-framework/
Попробуйте этот код.
Это работает нормально для меня
Вы должны каждый раз инициализировать библиотеку
function do_upload()
{
foreach ( Попробуйте этот код.
Это работает нормально для меня
Вы должны каждый раз инициализировать библиотеку
[110] Дальнейшее редактирование
Я нашел способ, которым вы необходимо загружать файлы с помощью одного уникального поля ввода
CodeIgniter не поддерживает несколько файлов. Использование do_upload () в foreach не будет отличаться от его использования снаружи.
Вам нужно будет справиться с этим без помощи CodeIgniter. Вот пример https://github.com/woxxy/FoOlSlide/blob/master/application/controllers/admin/series.php#L331-370
Это то, что сказано вами в комментариях:)
FILES as $index => $value)
{
if ($value['name'] != '')
{
$this->load->library('upload');
$this->upload->initialize($this->set_upload_options());
//upload the image
if ( ! $this->upload->do_upload($index))
{
$error['upload_error'] = $this->upload->display_errors("<span class='error'>", "</span>");
//load the view and the layout
$this->load->view('pages/uploadform', $error);
return FALSE;
}
else
{
$data[$key] = array('upload_data' => $this->upload->data());
$this->load->view('pages/uploadsuccess', $data[$key]);
}
}
}
}
private function set_upload_options()
{
//upload an image options
$config = array();
$config['upload_path'] = 'your upload path';
$config['allowed_types'] = 'gif|jpg|png';
return $config;
}
Дальнейшее редактирование
Я нашел способ, которым вы необходимо загружать файлы с помощью одного уникального поля ввода
CodeIgniter не поддерживает несколько файлов. Использование do_upload () в foreach не будет отличаться от его использования снаружи.
Вам нужно будет справиться с этим без помощи CodeIgniter. Вот пример https://github.com/woxxy/FoOlSlide/blob/master/application/controllers/admin/series.php#L331-370
Это то, что сказано вами в комментариях:)
VPATH = srcdri1:srcdir2:srcdir3:..
так простые условия как $(BUILDDIR)/%.o : %.c
, работал бы снова, и это - все!
– drahnr
24.09.2010, 01:37
<form method="post" action="<?php echo base_url('submit'); ?>" enctype="multipart/form-data">
<input type="file" name="userfile[]" id="userfile" multiple="" accept="image/*">
</form>
МОДЕЛЬ: FilesUpload
class FilesUpload extends CI_Model {
public function setFiles()
{
$name_array = array();
$count = count([110] МОДЕЛЬ: FilesUpload
[111] КОНТРОЛЛЕР submit
class Submit extends CI_Controller {
function __construct()
{
parent::__construct();
$this->load->helper(array('html', 'url'));
}
public function index()
{
$this->load->model('FilesUpload');
$data = $this->FilesUpload->setFiles();
echo '<pre>';
print_r($data);
}
}
FILES['userfile']['size']);
foreach ([110] МОДЕЛЬ: FilesUpload
[111] КОНТРОЛЛЕР submit
class Submit extends CI_Controller {
function __construct()
{
parent::__construct();
$this->load->helper(array('html', 'url'));
}
public function index()
{
$this->load->model('FilesUpload');
$data = $this->FilesUpload->setFiles();
echo '<pre>';
print_r($data);
}
}
FILES as $key => $value)
for ($s = 0; $s <= $count - 1; $s++) {
[110] МОДЕЛЬ: FilesUpload
[111] КОНТРОЛЛЕР submit
class Submit extends CI_Controller {
function __construct()
{
parent::__construct();
$this->load->helper(array('html', 'url'));
}
public function index()
{
$this->load->model('FilesUpload');
$data = $this->FilesUpload->setFiles();
echo '<pre>';
print_r($data);
}
}
FILES['userfile']['name'] = $value['name'][$s];
[110] МОДЕЛЬ: FilesUpload
[111] КОНТРОЛЛЕР submit
class Submit extends CI_Controller {
function __construct()
{
parent::__construct();
$this->load->helper(array('html', 'url'));
}
public function index()
{
$this->load->model('FilesUpload');
$data = $this->FilesUpload->setFiles();
echo '<pre>';
print_r($data);
}
}
FILES['userfile']['type'] = $value['type'][$s];
[110] МОДЕЛЬ: FilesUpload
[111] КОНТРОЛЛЕР submit
class Submit extends CI_Controller {
function __construct()
{
parent::__construct();
$this->load->helper(array('html', 'url'));
}
public function index()
{
$this->load->model('FilesUpload');
$data = $this->FilesUpload->setFiles();
echo '<pre>';
print_r($data);
}
}
FILES['userfile']['tmp_name'] = $value['tmp_name'][$s];
[110] МОДЕЛЬ: FilesUpload
[111] КОНТРОЛЛЕР submit
class Submit extends CI_Controller {
function __construct()
{
parent::__construct();
$this->load->helper(array('html', 'url'));
}
public function index()
{
$this->load->model('FilesUpload');
$data = $this->FilesUpload->setFiles();
echo '<pre>';
print_r($data);
}
}
FILES['userfile']['error'] = $value['error'][$s];
[110] МОДЕЛЬ: FilesUpload
[111] КОНТРОЛЛЕР submit
class Submit extends CI_Controller {
function __construct()
{
parent::__construct();
$this->load->helper(array('html', 'url'));
}
public function index()
{
$this->load->model('FilesUpload');
$data = $this->FilesUpload->setFiles();
echo '<pre>';
print_r($data);
}
}
FILES['userfile']['size'] = $value['size'][$s];
$config['upload_path'] = 'assets/product/';
$config['allowed_types'] = 'gif|jpg|png';
$config['max_size'] = '10000000';
$config['max_width'] = '51024';
$config['max_height'] = '5768';
$this->load->library('upload', $config);
if (!$this->upload->do_upload()) {
$data_error = array('msg' => $this->upload->display_errors());
var_dump($data_error);
} else {
$data = $this->upload->data();
}
$name_array[] = $data['file_name'];
}
$names = implode(',', $name_array);
return $names;
}
}
КОНТРОЛЛЕР submit
class Submit extends CI_Controller {
function __construct()
{
parent::__construct();
$this->load->helper(array('html', 'url'));
}
public function index()
{
$this->load->model('FilesUpload');
$data = $this->FilesUpload->setFiles();
echo '<pre>';
print_r($data);
}
}
Как предложил Карлос Ринконес; не бойтесь играть с суперглобалами.
$files = Как предложил Карлос Ринконес; не бойтесь играть с суперглобалами.
[110]FILES;
for($i=0; $i<count($files['userfile']['name']); $i++)
{
Как предложил Карлос Ринконес; не бойтесь играть с суперглобалами.
[110]FILES = array();
foreach( $files['userfile'] as $k=>$v )
{
Как предложил Карлос Ринконес; не бойтесь играть с суперглобалами.
[110]FILES['userfile'][$k] = $v[$i];
}
$this->upload->do_upload('userfile')
}
другой бит кода здесь:
см .: https://github.com/stvnthomas/CodeIgniter-Multi-Upload
new
там. На самом деле я don' t думают, что это скомпилирует с ним.
– Andrei Fierbinteanu
23.02.2020, 01:09
Сохраните, а затем переопределите переменную $ _FILES для всего, что вам нужно. возможно, не лучшее решение, но это сработало для меня.
function do_upload()
{
$this->load->library('upload');
$this->upload->initialize($this->set_upload_options());
$quantFiles = count( Сохраните, а затем переопределите переменную $ _FILES для всего, что вам нужно. возможно, не лучшее решение, но это сработало для меня.
[110] }
отдельная функция для установки конфигурации.
private function set_upload_options()
{
$config['upload_path'] = './uploads/';
$config['allowed_types'] = 'xml|pdf';
$config['max_size'] = '10000';
return $config;
}
FILES['userfile']['name']);
for($i = 0; $i < $quantFiles ; $i++)
{
$arquivo[$i] = array
(
'userfile' => array
(
'name' => Сохраните, а затем переопределите переменную $ _FILES для всего, что вам нужно. возможно, не лучшее решение, но это сработало для меня.
[110] }
отдельная функция для установки конфигурации.
private function set_upload_options()
{
$config['upload_path'] = './uploads/';
$config['allowed_types'] = 'xml|pdf';
$config['max_size'] = '10000';
return $config;
}
FILES['userfile']['name'][$i],
'type' => Сохраните, а затем переопределите переменную $ _FILES для всего, что вам нужно. возможно, не лучшее решение, но это сработало для меня.
[110] }
отдельная функция для установки конфигурации.
private function set_upload_options()
{
$config['upload_path'] = './uploads/';
$config['allowed_types'] = 'xml|pdf';
$config['max_size'] = '10000';
return $config;
}
FILES['userfile']['type'][$i],
'tmp_name' => Сохраните, а затем переопределите переменную $ _FILES для всего, что вам нужно. возможно, не лучшее решение, но это сработало для меня.
[110] }
отдельная функция для установки конфигурации.
private function set_upload_options()
{
$config['upload_path'] = './uploads/';
$config['allowed_types'] = 'xml|pdf';
$config['max_size'] = '10000';
return $config;
}
FILES['userfile']['tmp_name'][$i],
'error' => Сохраните, а затем переопределите переменную $ _FILES для всего, что вам нужно. возможно, не лучшее решение, но это сработало для меня.
[110] }
отдельная функция для установки конфигурации.
private function set_upload_options()
{
$config['upload_path'] = './uploads/';
$config['allowed_types'] = 'xml|pdf';
$config['max_size'] = '10000';
return $config;
}
FILES['userfile']['error'][$i],
'size' => Сохраните, а затем переопределите переменную $ _FILES для всего, что вам нужно. возможно, не лучшее решение, но это сработало для меня.
[110] }
отдельная функция для установки конфигурации.
private function set_upload_options()
{
$config['upload_path'] = './uploads/';
$config['allowed_types'] = 'xml|pdf';
$config['max_size'] = '10000';
return $config;
}
FILES['userfile']['size'][$i]
)
);
}
for($i = 0; $i < $quantFiles ; $i++)
{
Сохраните, а затем переопределите переменную $ _FILES для всего, что вам нужно. возможно, не лучшее решение, но это сработало для меня.
[110] }
отдельная функция для установки конфигурации.
private function set_upload_options()
{
$config['upload_path'] = './uploads/';
$config['allowed_types'] = 'xml|pdf';
$config['max_size'] = '10000';
return $config;
}
FILES = '';
Сохраните, а затем переопределите переменную $ _FILES для всего, что вам нужно. возможно, не лучшее решение, но это сработало для меня.
[110] }
отдельная функция для установки конфигурации.
private function set_upload_options()
{
$config['upload_path'] = './uploads/';
$config['allowed_types'] = 'xml|pdf';
$config['max_size'] = '10000';
return $config;
}
FILES = $arquivo[$i];
if ( ! $this->upload->do_upload())
{
$error[$i] = array('error' => $this->upload->display_errors());
return FALSE;
}
else
{
$data[$i] = array('upload_data' => $this->upload->data());
var_dump($this->upload->data());
}
}
if(isset($error))
{
$this->index($error);
}
else
{
$this->index($data);
}
}
отдельная функция для установки конфигурации.
private function set_upload_options()
{
$config['upload_path'] = './uploads/';
$config['allowed_types'] = 'xml|pdf';
$config['max_size'] = '10000';
return $config;
}
function imageUpload(){
if ($this->input->post('submitImg') && !empty([110]
FILES['files']['name'])) {
$filesCount = count([110]
FILES['files']['name']);
$userID = $this->session->userdata('userID');
$this->load->library('upload');
$config['upload_path'] = './userdp/';
$config['allowed_types'] = 'jpg|png|jpeg';
$config['max_size'] = '9184928';
$config['max_width'] = '5000';
$config['max_height'] = '5000';
$files = [110]
FILES;
$cpt = count([110]
FILES['files']['name']);
for($i = 0 ; $i < $cpt ; $i++){
[110]
FILES['files']['name']= $files['files']['name'][$i];
[110]
FILES['files']['type']= $files['files']['type'][$i];
[110]
FILES['files']['tmp_name']= $files['files']['tmp_name'][$i];
[110]
FILES['files']['error']= $files['files']['error'][$i];
[110]
FILES['files']['size']= $files['files']['size'][$i];
$imageName = 'image_'.$userID.'_'.rand().'.png';
$config['file_name'] = $imageName;
$this->upload->initialize($config);
if($this->upload->do_upload('files')){
$fileData = $this->upload->data(); //it return
$uploadData[$i]['picturePath'] = $fileData['file_name'];
}
}
if (!empty($uploadData)) {
$imgInsert = $this->insert_model->insertImg($uploadData);
$statusMsg = $imgInsert?'Files uploaded successfully.':'Some problem occurred, please try again.';
$this->session->set_flashdata('statusMsg',$statusMsg);
redirect('home/user_dash');
}
}
else{
redirect('home/user_dash');
}
}
Я недавно работал над этим. Попробуйте эту функцию:
/**
* @return array an array of your files uploaded.
*/
private function _upload_files($field='userfile'){
$files = array();
foreach( Я недавно работал над этим. Попробуйте эту функцию:
[110] в вашем случае:
<input type="file" multiple name="images[]" size="20" />
или
<input type="file" name="images[]">
<input type="file" name="images[]">
<input type="file" name="images[]">
в контроллере:
public function do_upload(){
$config['upload_path'] = './Images/';
$config['allowed_types'] = 'gif|jpg|png';
//...
$this->load->library('upload',$config);
if ( Я недавно работал над этим. Попробуйте эту функцию:
[110] в вашем случае:
[111] или
[112] в контроллере:
[113] Некоторые Базовая ссылка из руководства по PHP: Загрузка PHP-файла
FILES['images']) {
$images= $this->_upload_files('images');
print_r($images);
}
}
Некоторые Базовая ссылка из руководства по PHP: Загрузка PHP-файла
FILES[$field] as $key => $all )
foreach( $all as $i => $val )
$files[$i][$key] = $val;
$files_uploaded = array();
for ($i=0; $i < count($files); $i++) {
Я недавно работал над этим. Попробуйте эту функцию:
[110] в вашем случае:
<input type="file" multiple name="images[]" size="20" />
или
<input type="file" name="images[]">
<input type="file" name="images[]">
<input type="file" name="images[]">
в контроллере:
public function do_upload(){
$config['upload_path'] = './Images/';
$config['allowed_types'] = 'gif|jpg|png';
//...
$this->load->library('upload',$config);
if ( Я недавно работал над этим. Попробуйте эту функцию:
[110] в вашем случае:
[111] или
[112] в контроллере:
[113] Некоторые Базовая ссылка из руководства по PHP: Загрузка PHP-файла
FILES['images']) {
$images= $this->_upload_files('images');
print_r($images);
}
}
Некоторые Базовая ссылка из руководства по PHP: Загрузка PHP-файла
FILES[$field] = $files[$i];
if ($this->upload->do_upload($field))
$files_uploaded[$i] = $this->upload->data($files);
else
$files_uploaded[$i] = null;
}
return $files_uploaded;
}
в вашем случае:
<input type="file" multiple name="images[]" size="20" />
или
<input type="file" name="images[]">
<input type="file" name="images[]">
<input type="file" name="images[]">
в контроллере:
public function do_upload(){
$config['upload_path'] = './Images/';
$config['allowed_types'] = 'gif|jpg|png';
//...
$this->load->library('upload',$config);
if ( Я недавно работал над этим. Попробуйте эту функцию:
[110] в вашем случае:
[111] или
[112] в контроллере:
[113] Некоторые Базовая ссылка из руководства по PHP: Загрузка PHP-файла
FILES['images']) {
$images= $this->_upload_files('images');
print_r($images);
}
}
Некоторые Базовая ссылка из руководства по PHP: Загрузка PHP-файла
function UploadHotelImage(){
$data = array();
if($this->input->post('fileSubmit') && !empty([110] Используйте этот код для загрузки нескольких изображений в CI ....
FILES['userFiles']['name'])){
$filesCount = count([110] Используйте этот код для загрузки нескольких изображений в CI ....
FILES['userFiles']['name']);
for($i = 0; $i < $filesCount; $i++){
[110] Используйте этот код для загрузки нескольких изображений в CI ....
FILES['userFile']['name'] = [110] Используйте этот код для загрузки нескольких изображений в CI ....
FILES['userFiles']['name'][$i];
[110] Используйте этот код для загрузки нескольких изображений в CI ....
FILES['userFile']['type'] = [110] Используйте этот код для загрузки нескольких изображений в CI ....
FILES['userFiles']['type'][$i];
[110] Используйте этот код для загрузки нескольких изображений в CI ....
FILES['userFile']['tmp_name'] = [110] Используйте этот код для загрузки нескольких изображений в CI ....
FILES['userFiles']['tmp_name'][$i];
[110] Используйте этот код для загрузки нескольких изображений в CI ....
FILES['userFile']['error'] = [110] Используйте этот код для загрузки нескольких изображений в CI ....
FILES['userFiles']['error'][$i];
[110] Используйте этот код для загрузки нескольких изображений в CI ....
FILES['userFile']['size'] = [110] Используйте этот код для загрузки нескольких изображений в CI ....
FILES['userFiles']['size'][$i];
$uploadPath = 'uploads/files/';
$config['upload_path'] = $uploadPath;
$config['allowed_types'] = 'gif|jpg|png';
$this->load->library('upload', $config);
$this->upload->initialize($config);
if($this->upload->do_upload('userFile')){
$fileData = $this->upload->data();
$uploadData[$i]['file_name'] = $fileData['file_name'];
$uploadData[$i]['created'] = date("Y-m-d H:i:s");
$uploadData[$i]['modified'] = date("Y-m-d H:i:s");
}
}
if(!empty($uploadData)){
//Insert file information into the database
$insert = $this->file->insert($uploadData);
$statusMsg = $insert?'Files uploaded successfully.':'Some problem occurred, please try again.';
$this->session->set_flashdata('statusMsg',$statusMsg);
}
}
//Get files data from database
$data['files'] = $this->file->getRows();
//Pass the files data to view
$this->load->view('upload_files/index', $data);
}
}
//----- Model-----------//
public function insertHotelImage($data = array()){
$insert = $this->db->insert_batch('tbl_hotel_images',$data);
return $insert?true:false;
}
Используйте этот код для загрузки нескольких изображений в CI ....
final
методы, должно быть возможно сделать вывод.
– Hank Gay
23.02.2020, 01:08
// Change [110]FILES to new vars and loop them
foreach([110]FILES['files'] as $key=>$val)
{
$i = 1;
foreach($val as $v)
{
$field_name = "file_".$i;
[110]FILES[$field_name][$key] = $v;
$i++;
}
}
// Unset the useless one ;)
unset([110]FILES['files']);
// Put each errors and upload data to an array
$error = array();
$success = array();
// main action to upload each file
foreach([110]FILES as $field_name => $file)
{
if ( ! $this->upload->do_upload($field_name))
{
echo ' failed ';
}else{
echo ' success ';
}
}
static
методы, которые разрешены во время компиляции также. Все еще - это doesn' t, который я предполагаю, является основным моментом.
– Andrzej Doyle
23.02.2020, 01:08
Все опубликованные файлы будут входить в переменную $ _FILES, для использования библиотеки загрузки codeigniter нам нужно указать имя поля, которое мы используем для загрузки (по умолчанию это будет 'userfile'), поэтому мы получаем все опубликованные файлы и создаем другой массив файлов, который создает наше собственное имя для каждого файла и присваивает это имя функции doignup библиотеки библиотеки codeigniter.
if(!empty( Все опубликованные файлы будут входить в переменную $ _FILES, для использования библиотеки загрузки codeigniter нам нужно указать имя поля, которое мы используем для загрузки (по умолчанию это будет 'userfile'), поэтому мы получаем все опубликованные файлы и создаем другой массив файлов, который создает наше собственное имя для каждого файла и присваивает это имя функции doignup библиотеки библиотеки codeigniter.
[110]FILES)){
$j = 1;
foreach( Все опубликованные файлы будут входить в переменную $ _FILES, для использования библиотеки загрузки codeigniter нам нужно указать имя поля, которое мы используем для загрузки (по умолчанию это будет 'userfile'), поэтому мы получаем все опубликованные файлы и создаем другой массив файлов, который создает наше собственное имя для каждого файла и присваивает это имя функции doignup библиотеки библиотеки codeigniter.
[110]FILES as $filekey=>$fileattachments){
foreach($fileattachments as $key=>$val){
if(is_array($val)){
$i = 1;
foreach($val as $v){
$field_name = "multiple_".$filekey."_".$i;
Все опубликованные файлы будут входить в переменную $ _FILES, для использования библиотеки загрузки codeigniter нам нужно указать имя поля, которое мы используем для загрузки (по умолчанию это будет 'userfile'), поэтому мы получаем все опубликованные файлы и создаем другой массив файлов, который создает наше собственное имя для каждого файла и присваивает это имя функции doignup библиотеки библиотеки codeigniter.
[110]FILES[$field_name][$key] = $v;
$i++;
}
}else{
$field_name = "single_".$filekey."_".$j;
Все опубликованные файлы будут входить в переменную $ _FILES, для использования библиотеки загрузки codeigniter нам нужно указать имя поля, которое мы используем для загрузки (по умолчанию это будет 'userfile'), поэтому мы получаем все опубликованные файлы и создаем другой массив файлов, который создает наше собственное имя для каждого файла и присваивает это имя функции doignup библиотеки библиотеки codeigniter.
[110]FILES[$field_name] = $fileattachments;
$j++;
break;
}
}
// Unset the useless one
unset( Все опубликованные файлы будут входить в переменную $ _FILES, для использования библиотеки загрузки codeigniter нам нужно указать имя поля, которое мы используем для загрузки (по умолчанию это будет 'userfile'), поэтому мы получаем все опубликованные файлы и создаем другой массив файлов, который создает наше собственное имя для каждого файла и присваивает это имя функции doignup библиотеки библиотеки codeigniter.
[110]FILES[$filekey]);
}
foreach( Все опубликованные файлы будут входить в переменную $ _FILES, для использования библиотеки загрузки codeigniter нам нужно указать имя поля, которое мы используем для загрузки (по умолчанию это будет 'userfile'), поэтому мы получаем все опубликованные файлы и создаем другой массив файлов, который создает наше собственное имя для каждого файла и присваивает это имя функции doignup библиотеки библиотеки codeigniter.
[110]FILES as $field_name => $file){
if(isset($file['error']) && $file['error']==0){
$config['upload_path'] = [upload_path];
$config['allowed_types'] = [allowed_types];
$config['max_size'] = 100;
$config['max_width'] = 1024;
$config['max_height'] = 768;
$this->load->library('upload', $config);
$this->upload->initialize($config);
if ( ! $this->upload->do_upload($field_name)){
$error = array('error' => $this->upload->display_errors());
echo "Error Message : ". $error['error'];
}else{
$data = $this->upload->data();
echo "Uploaded FileName : ".$data['file_name'];
// Code for insert into database
}
}
}
}
Я использовал приведенный ниже код в моей пользовательской библиотеке.
. Вызов с моего контроллера, как показано ниже:
function __construct() {<br />
parent::__construct();<br />
$this->load->library('CommonMethods');<br />
}<br />
$config = array();<br />
$config['upload_path'] = 'assets/upload/images/';<br />
$config['allowed_types'] = 'gif|jpg|png|jpeg';<br />
$config['max_width'] = 150;<br />
$config['max_height'] = 150;<br />
$config['encrypt_name'] = TRUE;<br />
$config['overwrite'] = FALSE;<br />
// upload multiplefiles<br />
$fileUploadResponse = $this->commonmethods->do_upload_multiple_files('profile_picture', $config);
/**
* do_upload_multiple_files - Multiple Methods
* @param type $fieldName
* @param type $options
* @return type
*/
public function do_upload_multiple_files($fieldName, $options) {
$response = array();
$files = Я использовал приведенный ниже код в моей пользовательской библиотеке.
. Вызов с моего контроллера, как показано ниже:
[110]
[111]FILES;
$cpt = count( Я использовал приведенный ниже код в моей пользовательской библиотеке.
. Вызов с моего контроллера, как показано ниже:
[110]
[111]FILES[$fieldName]['name']);
for($i=0; $i<$cpt; $i++)
{
Я использовал приведенный ниже код в моей пользовательской библиотеке.
. Вызов с моего контроллера, как показано ниже:
[110]
[111]FILES[$fieldName]['name']= $files[$fieldName]['name'][$i];
Я использовал приведенный ниже код в моей пользовательской библиотеке.
. Вызов с моего контроллера, как показано ниже:
[110]
[111]FILES[$fieldName]['type']= $files[$fieldName]['type'][$i];
Я использовал приведенный ниже код в моей пользовательской библиотеке.
. Вызов с моего контроллера, как показано ниже:
[110]
[111]FILES[$fieldName]['tmp_name']= $files[$fieldName]['tmp_name'][$i];
Я использовал приведенный ниже код в моей пользовательской библиотеке.
. Вызов с моего контроллера, как показано ниже:
[110]
[111]FILES[$fieldName]['error']= $files[$fieldName]['error'][$i];
Я использовал приведенный ниже код в моей пользовательской библиотеке.
. Вызов с моего контроллера, как показано ниже:
[110]
[111]FILES[$fieldName]['size']= $files[$fieldName]['size'][$i];
$this->CI->load->library('upload');
$this->CI->upload->initialize($options);
//upload the image
if (!$this->CI->upload->do_upload($fieldName)) {
$response['erros'][] = $this->CI->upload->display_errors();
} else {
$response['result'][] = $this->CI->upload->data();
}
}
return $response;
}
public function imageupload()
{
$count = count([110]FILES['userfile']['size']);
$config['upload_path'] = './uploads/';
$config['allowed_types'] = 'gif|jpg|png|bmp';
$config['max_size'] = '0';
$config['max_width'] = '0';
$config['max_height'] = '0';
$config['image_library'] = 'gd2';
$config['create_thumb'] = TRUE;
$config['maintain_ratio'] = FALSE;
$config['width'] = 50;
$config['height'] = 50;
foreach([110]FILES as $key=>$value)
{
for($s=0; $s<=$count-1; $s++)
{
[110]FILES['userfile']['name']=$value['name'][$s];
[110]FILES['userfile']['type'] = $value['type'][$s];
[110]FILES['userfile']['tmp_name'] = $value['tmp_name'][$s];
[110]FILES['userfile']['error'] = $value['error'][$s];
[110]FILES['userfile']['size'] = $value['size'][$s];
$this->load->library('upload', $config);
if ($this->upload->do_upload('userfile'))
{
$data['userfile'][$i] = $this->upload->data();
$full_path = $data['userfile']['full_path'];
$config['source_image'] = $full_path;
$config['new_image'] = './uploads/resiezedImage';
$this->load->library('image_lib', $config);
$this->image_lib->resize();
$this->image_lib->clear();
}
else
{
$data['upload_errors'][$i] = $this->upload->display_errors();
}
}
}
}
Вы должны использовать эту библиотеку для мультизагрузки в CI. https://github.com/stvnthomas/CodeIgniter-Multi-Upload
. Установка Просто скопируйте файл MY_Upload.php в свой каталог библиотеки приложений.
Использование: функция test_up в контроллере
public function test_up(){
if($this->input->post('submit')){
$path = './public/test_upload/';
$this->load->library('upload');
$this->upload->initialize(array(
"upload_path"=>$path,
"allowed_types"=>"*"
));
if($this->upload->do_multi_upload("myfile")){
echo '<pre>';
print_r($this->upload->get_multi_upload_data());
echo '</pre>';
}
}else{
$this->load->view('test/upload_view');
}
}
upload_view.php в папке apps / view / test
<form action="" method="post" enctype="multipart/form-data">
<input type="file" name="myfile[]" id="myfile" multiple>
<input type="submit" name="submit" id="submit" value="submit"/>