Codeigniter - 具有多个下拉区域的图片库和图片库PDF文件

时间:2017-05-24 18:19:16

标签: php jquery mysql codeigniter

您好,我正在从事房地产项目。我有一个有一些输入和表格的表格。然后在第一种形式中包含3种形式,它们具有用于简单图像的dropzone类,图片库和图像库。 pdf文件。我尝试了很多技巧,但无法使用dropzones来处理主窗体。

我的问题:

  1. Dropzone发送输入&提交按钮被点击之前的图片。

  2. 如果之后,点击提交按钮,然后一些输入变为null&插入2条记录。

  3. 如果我删除或隐藏提交按钮或将其更改为锚标记以进行重定向,则图片无法上传。
  4. Listings_controller:

    function insert_listing(){
            $pass = rand(0,999);
            $data_seller = array(
                'name'      =>  $this->input->post('name'),
                'email'     =>  $this->input->post('email'),
                'cell'      =>  $this->input->post('cell'),
                'sms'       =>  $this->input->post('sms'),
                'pass'      =>  MD5($pass),
                'status'    =>  'seller',
                'last_date' =>  date('Y-m-d')
            );
            $result1 = $this->users_model->add_seller($data_seller);
    
            $data_listing = array(
                'code'      =>  $this->input->post('code'),
                'address'   =>  $this->input->post('address'),
                'city'      =>  $this->input->post('city'),
                'state'     =>  $this->input->post('state'),
                'zipcode'   =>  $this->input->post('zipcode'),
                'process'   =>  $this->input->post('process'),
                'step'      =>  $this->input->post('step'),
                'price'     =>  $this->input->post('price'),
                'agent_id'  =>  $this->input->post('agent'),
                'seller_id' =>  $this->db->insert_id()
            );
            $result2 = $this->listings_model->add_listing($data_listing);
    
            if($result2){
                $this->session->set_flashdata('success','Listing Added Successfully');
            }else{
                $this->session->set_flashdata('error','Listing Already Exists !');
            }
    
            //Dropzone - Pic
            if(!empty($_FILES)){
                $tempFile = $_FILES['file']['tmp_name'];
                $fileName = substr(sha1(rand(000,9999)),0,7).$_FILES['file']['name'];
                $targetPath = getcwd().'/assets/admin/images/image-gallery/';
                $targetFile = $targetPath.$fileName;
                move_uploaded_file($tempFile,$targetFile);
    
                $listing_id = $result2['id'];
                $data_listing_pic['listing_id'] = $listing_id;
                $data_listing_pic['pic'] = $fileName;
                $result3 = $this->listings_model->add_listing_pic($data_listing_pic);
            }
            redirect('admin/listings');
        }
    

    Users_model:

        //Seller Add
        function add_seller($data_seller){
            //Check Duplicate
            $this->db->select('*');
            $this->db->from($this->table);
            $this->db->where('email',$data_seller['email']);
    
            $query = $this->db->get();
            if($query->num_rows() > 0){
                $seller_id = $query->result_array();
                $data_seller['id'] = $seller_id[0]['id'];
                //Update Info
                $this->db->where('email',$data_seller['email']);
                $this->db->update($this->table,$data_seller);
                return $data_seller;
            }else{
                //INSERT Seller
                $result = $this->db->insert($this->table,$data_seller);
                //GET Last Inserted ID
                $seller_id = $this->db->insert_id();
                $data_seller['id'] = $seller_id;
                return $data_seller;
            }
        }
    

    Listings_model:

            //Listing Add
            function add_listing($data_listing){
                $result = $this->db->insert($this->table,$data_listing);
                $listing_id = $this->db->insert_id();
                $data_listing['id'] = $listing_id;
                return $data_listing;
            }
    
            //Listing Pic Add
            function add_listing_pic($data_listing_pic){
                $result = $this->db->insert($this->pics_table,$data_listing_pic);
            return $result;
        }
    

    我的观点:

       <form action="<?php echo base_url();?>admin/insert_listing" class="dropzone dz-clickable" method="POST" enctype="multipart/form-data">
            <input type="hidden" name="code" value="<?php echo $listing_code; ?>" />
            <div class="row">
                <div class="col-lg-6">
                    <strong>Property Information:</strong>
                    <br><br>
                    <div class="form-group form-float form-group-lg">
                        <div class="form-line">
                            <input type="text" class="form-control" name="address" autofocus required />
                            <label class="form-label">Street Address:</label>
                        </div>
                        <br>
                        <div class="form-line">
                            <input type="text" class="form-control" name="city" required />
                            <label class="form-label">City/Town:</label>
                        </div>
                        <br>
                        <div class="form-line">
                            <input type="text" class="form-control" name="state" required />
                            <label class="form-label">State:</label>
                        </div>
                        <br>
                        <div class="form-line">
                            <input type="text" class="form-control" name="zipcode" required />
                            <label class="form-label">Zip Code:</label>
                        </div>
                    </div>
                </div>
                <div class="col-lg-6">
                    <strong>Seller Information:</strong>
                    <br><br>
                    <div class="form-group form-float form-group-lg">
                        <div class="form-line">
                            <input type="text" class="form-control" name="name" required />
                            <label class="form-label">Full Name(s):</label>
                        </div>
                        <br>
                        <div class="form-line">
                            <input type="email" class="form-control" name="email" required />
                            <label class="form-label">Seller's Email:</label>
                        </div>
                        <br>
                        <div class="form-line">
                            <input type="text" class="form-control" name="cell" required />
                            <label class="form-label">Cell Phone Number:</label>
                        </div>
                        <br>
                        <div class="demo-checkbox">
                            <input type="checkbox" id="md_checkbox_26" name="sms" class="filled-in chk-col-blue" checked />
                            <label for="md_checkbox_26">Send status updates via SMS</label>
                        </div>
                    </div>
                </div>
            </div>
            <hr />
            <div class="row">
                <div class="col-lg-6">
                    <strong>Listing Agent:</strong>
                    <br /><br />
                    <select class="form-control show-tick" name="agent" required >
                        <option value="">-- Please choose from the drop down --</option>
                        <?php for($j=0; $j < count($agent_list); $j++){ ?>
                        <option value="<?php echo $agent_list[$j]['id']; ?>" ><?php echo $agent_list[$j]['name']; ?></option>
                        <?php } ?>
                    </select>
                    <br />
                </div>
                <div class="col-lg-6">
                    <strong>Listing Status Information:</strong>
                    <br /><br />
                    <select class="form-control show-tick" name="process" required >
                        <option value="">-- Please choose from the drop down --</option>
                        <option value="Listing Process">Listing Process</option>
                    </select>
                    <br /><br />
                    <select class="form-control show-tick" name="step" required >
                        <option value="">-- Please choose from the drop down --</option>
                        <option value="1">Step 1: The Prep</option>
                        <option value="2">Step 2: File Set Up</option>
                        <option value="3">Step 3: Pre-listing Checklists</option>
                        <option value="4">Step 4: Sign Installation</option>
                        <option value="5">Step 5: Feature Sheets</option>
                        <option value="6">Step 6: Open Houses</option>
                        <option value="7">Step 7: You Received an Offer!</option>
                    </select>
                </div>
            </div>
            <hr />
            <div class="row">
                <div class="col-lg-12">
                    <strong>Photo and Price:</strong>
                    <br><br>
                    <div class="form-group form-float form-group-lg">
                        <div class="form-line">
                            <input type="text" class="form-control" name="price" required />
                            <label class="form-label">Listing Price: $</label>
                        </div>
                    </div>
                    <form action="<?php echo base_url();?>admin/insert_listing_pdf" id="PDFUpload" class="dropzone dz-clickable" method="POST" enctype="multipart/form-data">
                        <div class="dz-message">
                            <div class="drag-icon-cph">
                                <i class="material-icons">touch_app</i>
                            </div>
                            <h3>Drop the Photo here or Click to Upload.</h3>
                            <em>(It is recommended to upload the most attractive photo that will catch the user's eye)</em>
                        </div>
                    </form>
                </div>
            </div>
            <hr />
            <div class="row">
                <div class="col-lg-6">
                    <strong>Upload Gallery Photos:</strong>
                    <br><br>
                    <form action="<?php echo base_url();?>admin/insert_listing_gallery" id="GalleryUpload" class="dropzone dz-clickable" method="POST" enctype="multipart/form-data">
                        <div class="dz-message">
                            <div class="drag-icon-cph">
                                <i class="material-icons">touch_app</i>
                            </div>
                            <h3>Drop files here or click to upload.</h3>
                            <em>(Upload all the gallery photos of the property in this section)</em>
                        </div>
                    </form>
                </div>
                <div class="col-lg-6">
                    <strong>Upload PDF Files:</strong>
                    <br><br>
                    <form action="<?php echo base_url();?>admin/insert_listing_pdf" id="PDFUpload" class="dropzone dz-clickable" method="POST" enctype="multipart/form-data">
                        <div class="dz-message">
                            <div class="drag-icon-cph">
                                <i class="material-icons">touch_app</i>
                            </div>
                            <h3>Drop files here or click to upload.</h3>
                            <em>(Upload all the PDF files related to the property in this section)</em>
                        </div>
                    </form>
                </div>
            </div>
            <hr />
            <div class="row">
                <div class="col-lg-12">
                    <button type="submit" class="btn btn-primary btn-lg waves-effect">ADD LISTING</button>
                </div>
            </div>
        </form>
    

0 个答案:

没有答案