2013-09-21 41 views
0

我想添加一个自定义图像字段来上载opencart的数据选项卡中的图像。图像显示,但点击保存按钮后,图像消失,图像也没有保存在MySQL数据库中。所以请帮助我。 我改变现有的代码如下上传图片:在Opencart的数据选项卡中添加自定义图像字段

在控制器/目录/ product.php

if (isset($this->request->post['backgroundimage'])) { 
     $this->data['backgroundimage'] = $this->request->post['backgroundimage']; 
    } elseif (!empty($product_info)) { 
     $this->data['backgroundimage'] = $product_info['backgroundimage']; 
    } else { 
     $this->data['backgroundimage'] = ''; 
    } 


    $this->load->model('tool/image'); 

    if (isset($this->request->post['backgroundimage']) && file_exists(DIR_IMAGE . $this->request->post['backgroundimage'])) { 
     $this->data['thumb'] = $this->model_tool_image->resize($this->request->post['backgroundimage'], 100, 100); 
    } elseif (!empty($product_info) && $product_info['backgroundimage'] && file_exists(DIR_IMAGE . $product_info['backgroundimage'])) { 
     $this->data['thumb'] = $this->model_tool_image->resize($product_info['backgroundimage'], 100, 100); 
    } else { 
     $this->data['thumb'] = $this->model_tool_image->resize('no_image.jpg', 100, 100); 
    } 

鉴于/模板/目录/ product_form.tpl

<tr> 
       <td><?php echo $entry_backgroundimage; ?></td> 
       <td><div class="image"><img src="<?php echo $thumb2; ?>" alt="" id="thumb2" /><br /> 
        <input type="hidden" name="image2" value="<?php echo $backgroundimage; ?>" id="image2" /> 
        <a onclick="image_upload('image2', 'thumb2');"><?php echo $text_browse; ?></a>&nbsp;&nbsp;|&nbsp;&nbsp;<a onclick="$('#thumb2').attr('src', '<?php echo $no_image; ?>'); $('#image2').attr('value', '');"><?php echo $text_clear; ?></a></div></td> 
      </tr> 

在模型/目录/ product.php

$this->db->query("INSERT INTO " . DB_PREFIX . "product SET backgroundimage = '" . $this->db->escape($data['image2']) . "',product_id = '" . (int)$product_id . "'"); 

回答

0

而不是 $this->db->escape($data['image2']) 使用本 $this->db->escape(html_entity_decode($data['image2'], ENT_QUOTES, 'UTF-8'))

相关问题