0

ユーザーがフォームを送信したときに複数のファイルをアップロードするフォームがあるアプリケーションを構築しています。次に、このような foreach ループによってキャッチされたすべての投稿値

if($booker->setsessions($_POST))
{
$this->redirect(array('controller'=>'homes','action'=>'step_four'));
}
else
{
    $this->setFlashMsg('Please Provide Valid Information','message-box ok');
}

ここでは、投稿の値をキャッチしています

foreach($data as $index=>$value){
    $this->$index=$value;
}
$this->save();  
$booking->booker_id =$this->id;
$booking->save();

public function save() 
{   
    if (!$this->id) {
        $this->create();
    }
    else {
        $this->update();
    }
}

protected function create()
{
    $connection = db::factory('mysql');

    $sql = "insert into {$this->table} (`";
    $sql .= implode('`, `', array_keys($this->values));
    $sql .= "`) values ('";

    $clean = array();
    foreach ($this->values as $value) {
        $clean[] = $connection->clean($value);
    }

    $sql .= implode("', '", $clean);
    $sql .= "')";

    $this->id = $connection->insertGetID($sql);
}

ここで $this->save(); すべての $index=>values を取得し、1 つのテーブルに挿入します。フォームは次のようになります

    <form class="form-3 form-horizontal ajxfrm" id="step-three" enctype="multipart/form-data" action="<?php echo $html->addLink(array('controller'=>'homes','action'=>'step_three_ajax')); ?>" method="post">
    <input id="name" type="text" name="name" />
    <input id="email" type="text" name="email" />
    <input id="city" type="text" name="city" />
     <input id="contact" type="text" name="contact" />
     <input id="fileupload" type="file" name="fileupload[]" />

ここでは、テーブル内のすべてのデータと別のテーブル内のファイルをmysqlを介してアップロードしたいのですが、上記のコードはすべての投稿値を取得し、ファイル列のない1つのテーブルに挿入しようとしているため、エラーが発生します

4

0 に答える 0