I want to upload a file using a registration form. I used File_Upload library of Codeigniter. But the file does not upload to the destination and no errors appears. This is just part of my code (All of them are really huge)
我想使用注册表单上传文件。我使用了Codeigniter的File_Upload库。但该文件不会上传到目标,也不会出现错误。这只是我代码的一部分(所有这些都非常庞大)
Controller (seeker_register.php):
public function submit(){
...
$this->load->model('mseeker_register');
$user_id = $this->mseeker_register->register($data);
View (vseeker_register.php):
$attr = array("class" => 'form-horizontal seeker_register','id' => 'form-seeker-register');
echo form_open_multipart('seeker_register/submit',$attr);
...
<div class="col-sm-6 col-sm-offset-3">
<input name="Aks" type="file" class="fileinput" accept=".jpg, .jpeg">
</div>
Model (mseeker_register.php):
...
// Prepare Aks
$config = array(
'upload_path' => './img/users',
'allowed_types' => 'jpg|jpeg|JPG|JPEG',
'max_size' => '200',
'max_width' => '1024',
'max_height' => '768');
$this->upload->initialize($config);
$this->upload->do_upload('Aks');
$this->upload->display_errors();
exit();
...
This is $this->upload->data() output:
这是$ this-> upload-> data()输出:
Array
(
[file_name] => Clipboard-2.jpg
[file_type] => image/jpeg
[file_path] => D:/khayyamkar.ir/www/img/users/
[full_path] => D:/khayyamkar.ir/www/img/users/Clipboard-2.jpg
[raw_name] => Clipboard-2
[orig_name] =>
[client_name] => Clipboard-2.jpg
[file_ext] => .jpg
[file_size] => 156.42
[is_image] => 1
[image_width] =>
[image_height] =>
[image_type] =>
[image_size_str] =>
)
2 个解决方案
#1
When I scanned your code I realized that you you don't have a way to view the error(s).
当我扫描你的代码时,我意识到你没有办法查看错误。
To view what the error(s) are/is you need to use var_dump()
or print_r()
php method to view what are the error(s).
要查看错误是什么/你需要使用var_dump()或print_r()php方法来查看错误是什么。
for example:
var_dump($this->upload->display_errors());
in your current code you need to change :
在您当前的代码中,您需要更改:
$this->upload->display_errors();
exit();
TO:
var_dump($this->upload->display_errors());
exit();
You need to identify the error first to come up with a solution.
您需要首先确定错误以提出解决方案。
:)
#2
public function register() {
$config = array(
'upload_path' => './img/user',
'allowed_types' => 'jpg|jpeg|JPG|JPEG|png',
'max_size' => '200',
'max_width' => '1024',
'max_height' => '768');
$this->upload->initialize($config);
// you need to make sure that the upload path is existing
// and also check the folder permission to be rwxr-xr-x
// if you installed in a server where permission is required
// for you to create image inside the folder
// create a folder img/user in the root directory of the project
// where application or system located
// this will check
if ($this->upload->do_upload('Aks')) {
echo 'success'; die;
} else {
var_dump($this->upload->display_errors());die;
}
}
请参阅文件上载CodeIgniter
#1
When I scanned your code I realized that you you don't have a way to view the error(s).
当我扫描你的代码时,我意识到你没有办法查看错误。
To view what the error(s) are/is you need to use var_dump()
or print_r()
php method to view what are the error(s).
要查看错误是什么/你需要使用var_dump()或print_r()php方法来查看错误是什么。
for example:
var_dump($this->upload->display_errors());
in your current code you need to change :
在您当前的代码中,您需要更改:
$this->upload->display_errors();
exit();
TO:
var_dump($this->upload->display_errors());
exit();
You need to identify the error first to come up with a solution.
您需要首先确定错误以提出解决方案。
:)
#2
public function register() {
$config = array(
'upload_path' => './img/user',
'allowed_types' => 'jpg|jpeg|JPG|JPEG|png',
'max_size' => '200',
'max_width' => '1024',
'max_height' => '768');
$this->upload->initialize($config);
// you need to make sure that the upload path is existing
// and also check the folder permission to be rwxr-xr-x
// if you installed in a server where permission is required
// for you to create image inside the folder
// create a folder img/user in the root directory of the project
// where application or system located
// this will check
if ($this->upload->do_upload('Aks')) {
echo 'success'; die;
} else {
var_dump($this->upload->display_errors());die;
}
}
请参阅文件上载CodeIgniter