объединить имена загруженных изображений - PullRequest
0 голосов
/ 20 октября 2011

Я использую приведенный ниже код для загрузки нескольких изображений, взять имя файла изображения, объединить его с «,» и вернуть значение, чтобы его можно было использовать для вставки в базу данных с помощью CodeIgniter.

Проблема в том, что я не могу объединить имена файлов с помощью implode ().

Может кто-нибудь сказать мне, что я делаю не так?

function upload(){
      $config['upload_path'] = './uploadsim/'; 
      $config['allowed_types'] = 'gif|jpg|jpeg';
      $config['max_size']  = '0';
      $config['max_width']  = '0';
      $config['max_height']  = '0';
      $this->load->library('upload', $config);

  for($i = 1; $i < 6; $i++) {

        $upload = $this->upload->do_upload('image'.$i);

        if($upload === FALSE) continue;

        $images = array('upload_data'=>$this->upload->data());
        $imagename= $images['upload_data']['file_name'];
        $impl=  implode(",", $imagename);


  }
     return $impl;

}  

Ответы [ 3 ]

1 голос
/ 20 октября 2011

изменить обозначение имени изображения для создания массива

$imagename[] = $images['upload_data']['file_name'];

затем перенесите ваш взрыв на внешнюю сторону петли

return implode(",", $imagename);
0 голосов
/ 20 октября 2011

Я думаю, вам нужно внести некоторые изменения в этот код ..

for($i = 1; $i < 6; $i++) {

        $upload = $this->upload->do_upload('image'.$i);

        if($upload === FALSE) continue;

        $images = array('upload_data'=>$this->upload->data());
        $imagename[] = $images['upload_data']['file_name'];


  }
$impl =  implode(",", $imagename);

return $impl;
0 голосов
/ 20 октября 2011

Вы получите только имя файла последнего файла, как показывает код (если работает вообще). Чтобы сопоставить имя изображения с символом a, вы можете сделать несколько вещей.

$imagename = ""; #before the for loop
$imagename .= ',' . $images['upload_data']['file_name']; #in the for loop

или

$imagename[($i-1)] = $images['upload_data']['file_name']; # in the for loop
$impl = imploade(",",$imagename; # outside the for loop
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...