Zaloguj | Zarejestruj | FAQ
Anonymous

помогите подправить скрипт

+ Odpowiedz

Posty: 3 Strona 1 z 1


помогите подправить скрипт

przez sonicking » Pt cze 21, 2013 5:10 pm

добрый день

есть небольшой скрипт для opencart (поиск картинок)
всё в нём прекрасно, кроме одного - он загружаемые файлы переименовывает в их md5

а мне надо, чтоб переименовывалось в имя, которе берётся из базы данных, из определённой таблицы, а именно:

имя базы skolk105, имя таблицы url_alias, столбец keyword

сам в PHP ни бум бум, а у автора скрипта нет времени для переделки, но он не против

вот сам скрипт:

Kod: Zaznacz cały
<?php
class ControllerToolImageSearch extends Controller {
private $error = array();

public function index() {
$json = array();

$this->load->model('setting/setting');

if (isset($this->request->get['imgsz'])) {
$json['settings']['imgsz']=$this->request->get['imgsz'];
if (isset($this->request->get['folder'])) {
if (trim($this->request->get['folder'],"/")!="") {
$json['settings']['folder']=trim($this->request->get['folder'],"/")."/";
} else {
$json['settings']['folder'] = "data/";
}
} else {
$json['settings']['folder'] = "data/";
}
$this->request->get['folder'] = $json['settings']['folder'];
$this->model_setting_setting->editSetting('image_search', $this->request->get);
} else {
$settings = $this->model_setting_setting->getSetting('image_search');
$json['settings']['imgsz']='';
$json['settings']['folder']='data/';
if (isset($settings['imgsz'])) $json['settings']['imgsz']=$settings['imgsz'];
if (isset($settings['folder'])) $json['settings']['folder']=$settings['folder'];
}
$json['fotos'] = array();
$start = 0;
if (isset($this->request->get['start'])) $start = $this->request->get['start'];
if (isset($this->request->get['product_id'])) {
if (!isset($this->request->get['product_name'])) {
$this->load->model('catalog/product');
$product_info = $this->model_catalog_product->getProduct($this->request->get['product_id']);
} else {
$product_info['name']=$this->request->get['product_name'];
}

if (isset($product_info['name'])) {
$json['product_name'] = $product_info['name'];

if ($json['settings']['imgsz']) {
$url = 'http://ajax.googleapis.com/ajax/services/search/images?v=1.0&rsz=8&q='.urlencode($product_info['name']).'&imgsz='.$json['settings']['imgsz'].'&start='.$start;
$response = json_decode(file_get_contents($url));

} else {

$url = 'http://ajax.googleapis.com/ajax/services/search/images?v=1.0&rsz=8&q='.urlencode($product_info['name']).'&start='.$start;
//echo file_get_contents($url); exit;
$response = json_decode(file_get_contents($url));
}

//print_r($response);
$json['fotos'] = array();
if (!empty($response) && $response->responseStatus == 200) {
foreach ($response->responseData->results as $item) {
$json['fotos'][] = array(
'preview' => $item->tbUrl,
'full' => $item->url,
'size' => $item->width."x".$item->height
);

} //foreach

if (isset($response->responseData->cursor->pages)) $json['pages'] = $response->responseData->cursor->pages;
if (isset($response->responseData->cursor->currentPageIndex)) $json['page'] = $response->responseData->cursor->currentPageIndex;

}

}
}

$this->response->setOutput(json_encode($json));
}

public function upload() {
$this->load->model('setting/setting');
if (isset($this->request->get['product_id']) && isset($this->request->get['href'])) {

if (isset($this->request->get['imgsz'])) {
$json['settings']['imgsz']=$this->request->get['imgsz'];
if (isset($this->request->get['folder'])) {
if (trim($this->request->get['folder'],"/")!="") {
$json['settings']['folder']=trim($this->request->get['folder'],"/")."/";
} else {
$json['settings']['folder'] = "data/";
}
} else {
$json['settings']['folder'] = "data/";
}
$this->request->get['folder'] = $json['settings']['folder'];
$this->model_setting_setting->editSetting('image_search', $this->request->get);
} else {
$settings = $this->model_setting_setting->getSetting('image_search');
$json['settings']['imgsz']='';
$json['settings']['folder']='data/';
if (isset($settings['imgsz'])) $json['settings']['imgsz']=$settings['imgsz'];
if (isset($settings['folder'])) $json['settings']['folder']=$settings['folder'];
}
if (!file_exists(DIR_IMAGE . $json['settings']['folder'])) {
@mkdir(DIR_IMAGE . $json['settings']['folder'], 0777, true);
@chmod(DIR_IMAGE . $json['settings']['folder'], 0777);
}
$image = $json['settings']['folder'].md5($this->request->get['href']).".jpg";
$header = get_headers($this->request->get['href']);
if (isset($header[0]) && $header[0]!="HTTP/1.1 404 Not Found") {
file_put_contents(DIR_IMAGE.$image,file_get_contents($this->request->get['href']));
$this->db->query("UPDATE ".DB_PREFIX."product SET image='".$image."' WHERE product_id=".(int)$this->request->get['product_id']);
$this->load->model('tool/image');
$image = $this->model_tool_image->resize($image, 40, 40);
echo $image;
} else {
echo "error";
}
}
}
}
?>



имя прописывается вроде в самом конце

$image = $json['settings']['folder'].md5($this->request->get['href']).".jpg";

помогите люди добрые, а то работа стоит
спасибо заранее
Avatar użytkownika

sonicking

  • Posty: 1
  • Dołączył(a): Pt cze 21, 2013 4:55 pm

Re: помогите подправить скрипт

przez XainPro » Śr cze 26, 2013 9:46 am

Я хотел бы помочь вам, но это за пределами моего опыта
удачи может быть, кто-то в состоянии помочь вам в этом проблема
Avatar użytkownika

XainPro

  • Posty: 3933
  • Dołączył(a): Pt lut 17, 2012 8:10 pm

Re: помогите подправить скрипт

przez Muxa » So sie 10, 2013 4:15 pm

ну вот формируется имя картинки
Kod: Zaznacz cały
$image = $json['settings']['folder'].md5($this->request->get['href']).".jpg";

Выше этой строчки выполняйте коннект к БД, и вместо
Kod: Zaznacz cały
md5($this->request->get['href'])
подставляйте нужное значение
Avatar użytkownika

Muxa

  • Posty: 181
  • Dołączył(a): Wt maja 15, 2012 7:14 pm


+ Odpowiedz

Strona 1 z 1