我用笨的MVC框架,我想打,有一个上传图片的形式,并且还保存在输入类型输入的数据在一个HTML <form>
这是为什么我的形象无法上传,当我回声错误会显示这样的错误:上传图像和笨将数据保存到数据库中的一个形式
File cannot be uploadedarray(1) { ["error"]=> string(43) "
You did not select a file to upload.
" }
这是我在视图代码:
<form id="frm_product" class="form-horizontal" method="POST" action="Admin_controls/addProduct">
<div style="position:relative;">
<a class='btn btn-primary' href='javascript:;'>
Choose Picture..
<input type="file" style='position:absolute;z-index:2;top:0;left:0;filter: alpha(opacity=0);-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";opacity:0;background-color:transparent;color:transparent;' name="file_source" size="40" onchange='$("#upload-file-info").html($(this).val());'>
</a>
<span class='label label-info' id="upload-file-info"></span>
</div>
<br>
<div class="form-group">
<label for="cat_name">Product Name: </label>
<input type="text" class="form-control" name="prod_name">
</div>
<div class="form-group">
<label for="cat_desc">Description: </label>
<input type="text" class="form-control" name="prod_desc">
</div>
<div class="form-group">
<label for="cat_desc">Price: </label>
<input type="text" class="form-control" name="prod_price">
</div>
<div class="form-group">
<label for="cat_desc">Category: </label>
<select class="form-control" name="prod_cat">
<?php foreach($data as $each){ ?>
<option value="<?php echo $each->Category_id; ?>"><?php echo $each->Category_name; ?></option>';
<?php } ?>
</select>
</div>
</form>
这里是我的javascript提交表单:
function submitProduct() {
document.getElementById("frm_product").submit();
}
在我这里控制器是我的代码:
public function addProduct(){
$config['upload_path'] = './assets/uploaded_images/';
$config['allowed_types'] = 'jpg|jpeg|png';
$config['max_size'] = 1024 * 8;
$this->load->library('upload', $config);
if($this->upload->do_upload("file_source")) {
$upload_data = $this->upload->data();
$file_name = base_url().'assets/uploaded_images/'.$upload_data['file_name'];
$data = array (
'Product_name' => $this->input->post('prod_name'),
'Product_desc' => $this->input->post('prod_desc'),
'Product_price' => $this->input->post('prod_price'),
'Category_id' => $this->input->post('prod_cat'),
'Product_img' => $file_name
);
var_dump($data);
}
else {
echo "File cannot be uploaded";
$error = array('error' => $this->upload->display_errors()); var_dump($error);
}
}
你怎么可以提交这种形式? – knizer
@knizer OPSS我忘记了JavaScript的我会编辑自己的帖子 –
在那里你调用这个函数(submitProduct())? – knizer