Ben hala CodeIgniter çok yeniyim. Ben yaşıyorum sorun dosya ince yüklenenler ve sorun olmadan veritabanına yazıyor ama sadece yükleme formu beni geri olmamasıdır. Bunun yerine do_upload kalır ve bir şey göstermez. Daha tuhaf yüklemek için bir görüntü seçmezseniz çıkageldi mesajı gibi görünen perde arkasında bazı kaynak kodu yoktur. Birisi teslim sonra benim yükleme formuna dönen istiyorum çünkü ben yanlış yapıyorum ne gözlerimi söyleyebilirim. Şimdiden teşekkürler. Aşağıda benim kodudur:
Denetleyici:
function do_upload()
{
if(($error = $this->Upload_model->do_upload()) === true)
{
$this->load->view('home/upload_form');
}else{
$this->load->view('home/upload_success', $error);
}
}
Model:
function do_upload()
{
$config['upload_path'] = './uploads/';
$config['allowed_types'] = 'gif|jpg|png';
$config['max_size'] = '2000';
$this->load->library('upload', $config);
if ( ! $this->upload->do_upload())
{
$error = array('error' => $this->upload->display_errors());
return $error;
}
else
{
$data = $this->upload->data();
$full_path = 'uploads/' . $data['file_name'];
$spam = array(
'image_url' => $full_path,
'url' => $this->input->post('url')
);
$id = $this->input->post('id');
$this->db->where('id', $id);
$this->db->update('NavItemData', $spam);
return true;
}
}
Görünüm (upload_form denir):
<html>
<head>
<title>Upload Form</title>
</head>
<body>
<?php if(isset($buttons)) : foreach($buttons as $row) : ?>
<h2><?php echo $row->image_url; ?></h2>
<p><?php echo $row->url; ?></p>
<p><?php echo $row->name; ?></p>
<p><?php echo anchor("upload/update_nav/$row->id", 'edit'); ?></p>
<?php endforeach; ?>
<?php endif; ?>
</body>
</html>
İşte gerçek yükleme şeklidir:
<html>
<head>
<title>Upload Form</title>
</head>
<body>
<?php echo form_open_multipart('upload/do_upload');?>
<?php if(isset($buttons)) : foreach($buttons as $row) : ?>
<h2><?php echo $row->name; ?></h2>
<input type="file" name="userfile" size="20" />
<input type="hidden" name="oldfile" value="<?php echo $row->image_url; ?>" />
<input type="hidden" name="id" value="<?php echo $row->id; ?>" />
<br /><br />
<label>Url: </label><input type="text" name="url" value="<?php echo $row->url; ?>" /><br /><br />
<input type="submit" value="submit" />
</form>
<?php endforeach; ?>
<?php endif; ?>
</body>
</html>