Okey, 그래서 검색을하고 Google에서 모든 것을 시도하지만 막혔습니다. 기존 CodeIgniter 프로젝트에서 업로드 기능을 사용하려고합니다. 실제 크기는 320x320 픽셀이지만 64x64 픽셀 크기로 업로드 한 다음 내보기에 표시하고 싶습니다.codeigniter 가입 테이블에서 이미지를 업로드하는 방법
두 테이블을 결합하여 다른 테이블의 '이름'필드를 얻었으므로 새 데이터를 추가해야 할 때 데이터보기에 추가 할 수 있습니다.하지만 그 일을 처리 할 수는 있지만 혼란 스럽습니다. 업로드 코드/함수 원인을 넣어하는 방법이 'add_data'함수를 내가 데이터베이스에 'tambah_mahasiswa'보기에 게시 할 저장하는 데 사용합니다. 'add_data'함수에 'do_upload'함수를 결합하려고했지만 여전히 작동하지 않습니다. 어떻게 해결할 수 있습니까?
이 tb_mahasiswa 테이블에 내 사진 필드 :
Field Type Attributes
photo blob BINARY
을 그리고 여기 내 컨트롤러 코드 '의 ControlPanel'=입니다 :
class Controlpanel extends CI_Controller
{
private $path_uploads;
private $path_uploads_thumb;
function __construct()
{
parent::__construct();
$this->cek_login();
$this->load->model('modelku');
$this->path_uploads = realpath(APPPATH . '../uploads/');
$this->path_uploads_thumb = APPPATH . '../uploads/thumbnail';
}
function add_data()
{
$this->load->library('form_validation');
$this->load->helper('url');
$data['prodi']=$this->modelku->get_prodi_all();
$this->form_validation->set_rules('nim','Nomor Induk Mahasiswa','required|exact_length[7]');
$this->form_validation->set_rules('nim','Nomor Induk Mahasiswa','required|integer');
$this->form_validation->set_rules('nama','Nama Lengkap Mahasiswa','required');
$this->form_validation->set_rules('prodi','Prodi','required');
$this->form_validation->set_rules('tanggal_lahir','Tanggal lahir','required');
$this->form_validation->set_rules('email','Email','required|valid_email');
$this->form_validation->set_rules('jenis_kelamin','Jenis Kelamin','required');
$this->form_validation->set_rules('alamat','Alamat','required');
$this->form_validation->set_rules('telepon','Telepon','required');
if($this->form_validation->run())
{
$nim = $this->input->post('nim');
$nama = $this->input->post('nama');
$prodi = $this->input->post('prodi');
$tanggal_lahir = date('Y-m-d',strtotime($this->input->post('tanggal_lahir')));
$email = $this->input->post('email');
$jenis_kelamin = $this->input->post('jenis_kelamin');
$alamat = $this->input->post('alamat');
$telepon = $this->input->post('telepon');
$photo = $this->input->post('photo');
$data_mahasiswa = array('nim'=>$nim,'nama'=>$nama,'prodi'=>$prodi, 'tanggal_lahir'=>$tanggal_lahir,
'email'=>$email, 'jenis_kelamin'=>$jenis_kelamin,'alamat'=>$alamat,
'telepon'=>$telepon,'photo'=>$photo);
('controlpanel/index');
} else {
$this->load->view("tambah_mahasiswa",$data);
}
}
function do_upload()
{
$config['upload_path'] = $this->path_uploads;
$config['allowed_types'] = 'gif|jpg|png';
$config['max_size'] = '100';
$config['max_width'] = '1024';
$config['max_height'] = '768';
$this->load->library('upload', $config);
if (! $this->upload->do_upload())
{
$error = array('error' => $this->upload->display_errors());
$this->load->view('tambah_mahasiswa', $error);
}
else
{
$upload_data = $this->upload->data();
$this->load->view('controlpanel_view', $data);
$file_name = $upload_data['file_name'];
$config['image_library']='gd2';
$config['source_image']=$this->path_uploads . '\\' . $file_name;
$config['new_image']=$this->path_uploads_thumb . $file_name;
$config['create_thumb']=TRUE;
$config['maintain_ratio']=TRUE;
$config['width']=320;
$config['height']=320;
$this->load->library('image_lib',$config);
if(!$this->image_lib->resize())
{
echo $this->image_lib->display_errors();
} else {
echo "Berhasil di unggah!";
}
}
}
그리고 이것은 'tambah_mahasiswa'= 내 생각이다 :
<!DOCTYPE html>
<html>
<head>
<title>PHP Framework</title>
<link rel="stylesheet" href="<?php echo base_url() ?>asset/css/style.css"/>
</head>
<body>
<h3>Tambah Data Mahasiswa</h3>
<?php echo form_open('controlpanel/add_data'); ?>
<?php echo form_open_multipart('controlpanel/do_upload'); ?>
<table width="30%" border="0">
<tr>
<td>NIM <sup>*</sup></td>
<td>:</td>
<td>
<?php echo form_input(array('name'=>'nim', 'maxlenght'=>'7', 'size'=>'10'),set_value('nim'))?> <?php echo form_error('nim','<span style="color:red;"><small>','</div></span>') ?> </br>
</td>
</tr>
<tr>
<td>Nama <sup>*</sup></td>
<td>:</td>
<td>
<?php echo form_input(array('name'=>'nama', 'maxlenght'=>'35', 'size'=>'15'),set_value('nama'))?> <?php echo form_error('nama','<span style="color:red;"><small>','</div></span>') ?> </br>
</td>
</tr>
<td>Prodi <sup>*</sup> </td>
<td>:</td>
<td>
<?php
foreach($prodi as $item_prodi)
{
$array_prodi[$item_prodi->kode]=$item_prodi->namaprodi;
}
echo form_dropdown('prodi',$array_prodi);
?>
</td>
</tr>
<tr>
<td width='30%'>Tanggal Lahir <sup>*</sup></td>
<td>:</td>
<td>
<?php echo form_input(array('name'=>'tanggal_lahir', 'maxlenght'=> '10', 'placeholder'=>'yyyy-mm-dd', 'size'=>'15', 'id'=>'tanggal_lahir'),set_value('tgl_lahir'))?> <?php echo form_error('tgl_lahir','<span style="color:red;"><small>','</small></span>') ?>
</td>
</tr>
<tr>
<td>Jenis Kelamin <sup>*</sup></td>
<td>:</td>
<td>
<?php echo form_radio('jenis_kelamin', 'L', TRUE)?> Laki-laki
<?php echo form_radio('jenis_kelamin', 'P')?> Perempuan
</td>
</tr>
<tr>
<td>Alamat <sup>*</sup></td>
<td>:</td>
<td>
<?php echo form_textarea(array('name'=>'alamat','rows'=>'10','cols'=>'30'),set_value('alamat'))?> <?php echo form_error('alamat','<span style="color:red;"><small>','</small></span>') ?> </br>
</td>
</tr>
<tr>
<td>Propinsi </td>
<td>:</td>
<td>
<?php echo form_input(array('name'=>'propinsi', 'maxlenght'=>'15', 'size'=>'17','id'=>'propinsi'))?> <?php echo form_error('propinsi','<span style="color:red;"><small>','</small></span>') ?> </br>
</td>
</tr>
<tr>
<td>No. Telp </td>
<td>:</td>
<td>
<?php echo form_input(array('name'=>'telepon', 'maxlenght'=>'15', 'size'=>'17'))?> <?php echo form_error('telp','<span style="color:red;"><small>','</small></span>') ?> </br>
</td>
</tr>
<tr>
<td>Email <sup>*</sup> </td>
<td>:</td>
<td>
<?php echo form_input(array('name'=>'email', 'maxlenght'=>'30','placeholder'=>'[email protected]', 'size'=>'17'),set_value('email'))?> <?php echo form_error('email','<span style="color:red;"><small>','</small></span>') ?> </br>
</td>
</tr>
<tr>
<td>Photo </td>
<td>:</td>
<td>
<?php echo form_input(array('name'=>'photo', 'type'=>'file', 'size'=>'20'),set_value('photo')) ?>
</br>
</td>
</tr>
<tr>
<td>
<?php echo form_submit(array('type'=>"submit", 'name'=>"mysubmit", 'value'=>"Save"))?>
</td>
</tr>
<?php echo form_close();?>
</table>
</body>
</html>
추신 : 프로젝트의 이미지 파일에 대한 폴더를 만들었습니다 :
- myproject\uploads\thumbnail