2016-10-15 4 views
0

画像がアップロードされていません何がアップロードヘルパーCodeIgniterで間違っているのですか?それは私を夢中にさせている。ヘルパーコード署名の問題をアップロードします。画像をアップロードしない

ビュー

<?php echo form_open_multipart('http://work/npanel/users/save'); ?> 
<div class="form-group"> 
    <?php echo form_label('Name'); ?> 
    <?php 

    $data_name = array(
     'name' => 'name', 
     'class' => 'form-control', 
    ); 

    echo form_input($data_name); 
    ?> 
</div> 
<div class="form-group"> 
    <?php echo form_label('Lastname'); ?> 
    <?php 

    $data_lastname = array(
     'name' => 'lastname', 
     'class' => 'form-control', 
    ); 

    echo form_input($data_lastname); 
    ?> 
</div> 
<div class="form-group"> 
    <?php echo form_label('Picture'); ?> 
    <?php 

    $data_upload = array(
     'type' => 'file', 
     'name' => 'image' 
    ); 
    echo form_upload($data_upload); 
    ?> 
</div> 

<?php 
$data_hidden = array(
    'id' => $id 
); 

echo form_hidden($data_hidden); 
?> 

<?php 
$send = array(
    'class' =>'btn-primary', 
    'type' =>'submit', 
    'value' =>'Save' 
); 

echo form_submit($send); 
?> 

<?php echo form_close(); ?> 

コントローラ

public function save($name, $lastname, $id, $image) 
{ 
    $name = $this->input->post('name'); 
    $lastname = $this->input->post('lastname'); 
    $id = $this->input->post('id'); 
    $image = $this->input->post('image'); 

    $this->load->model('User_model'); 
    $last_id = $this->User_model->save($name, $lastname, $id, $image); 

    $config['upload_path'] = '/assets/img/users/'; 
    $config['allowed_types'] = 'jpg|png|gif'; 
    $config['remove_spaces'] = TRUE; 
    $config['max_size'] = '2048'; 

    $this->load->library('upload', $config); 
    $this->upload->do_upload("image"); 
    $t = $this->upload->data; 

    $this->load->model('Images_model'); 
    $this->Images_model->setImage($t, $last_id); 

    redirect('http://work.com/npanel/users'); 
} 

画像の資産/ IMG /ユーザーのフォルダを保存しませんし、ファイル名を生成しません。私は間違って何をしていますか?あなたのform_open_multipart上のビューで

+0

あなたは '使用しているなぜならば、あなたはまた、フォルダ名を置くことができる機能フォームアクション内に「http」を追加します。リダイレクトと同じ 'controller_name/action_name'でなければなりません。 なぜパラメータを 'save function'に渡すのですか?あなたのリクエストは 'save function'に投稿されていますか? – AHJeebon

+0

開始スラッシュを取り除いて ' $ config ['upload_path'] = 'assets/img/users /';' – devpro

+0

AH Jebbon - 私は両方の方法で試しました。 httpとas controller>アクションを使用します。それはテストだった。そのようには機能しません。だから私は間違っています。 – C00LMasterN

答えて

0

(「ユーザーが保存/」)あなただけあなたはあなたがあなたのBASE_URLを設定していることを確認しhttp://www.codeigniter.com/user_guide/libraries/form_validation.html

したい場合は、フォームの検証を使用することができます

コントローラの名前と機能を必要としますconfig.phpの

config.phpの

$config['base_url'] = 'http://work/npanel/'; 

コントローラ機能

ファイル名Users.php最初の文字大文字のみ開く必要が唯一のコントローラ名をあなたのフォーラムを見るには

class Users extends CI_Controller {  

    public function __construct() { 
     parent::__construct(); 
     $this->load->library('upload'); 
     $this->load->model('user_model'); 
     $this->load->model('images_model'); 
    } 

    public function save($name,$lastname,$id,$image) {  
     $name = $this->input->post('name'); 
     $lastname = $this->input->post('lastname'); 
     $id = $this->input->post('id'); 
     $image = $this->input->post('image'); 

     $last_id = $this->user_model->save($name, $lastname, $id, $image); 

     $config['upload_path'] = './assets/img/users/'; 
     //$config['upload_path'] = FCPATH . '/assets/img/users/'; 
     $config['allowed_types'] = 'jpg|png|gif'; 
     $config['remove_spaces'] = TRUE; 
     $config['max_size'] = '2048'; 

     $this->upload->initialize($config); 

     $this->upload->do_upload("image"); 

     $t = $this->upload->data; 

     $this->images_model->setImage($t['file_name'], $last_id); 

     redirect('users/save');  

    } 

} 

とフォルダに

<?php echo form_open_multipart('users/save'); ?> 

<?php echo form_open_multipart('if_in_folder_name/users/save'); ?> 
+0

$ config ['base_url'] = 'http://仕事/'; – C00LMasterN

+0

それは働いた。私のパッチは – C00LMasterN

+0

です。私のパッチは と使いました。どうもありがとうございました。 – C00LMasterN

関連する問題