2015-09-14 4 views
-2

В моем приложении пользователи, создающие статьи и добавляющие к нему изображения, если пользователь не добавит изображения, это приложение должно искать его в изображениях Google. Я долго занимаюсь поиском, но до сих пор не могу найти, какие инструменты мне нужны для этого.Laravel google images search

EDIT Я попытался MIMOS подход, но сейчас что-то не так, и теперь я получаю:

NotReadableException in AbstractDecoder.php line 302: 
Image source not readable 

Когда я пытался сохранить изображение из URL

ArticlesController метод магазин:

public function store(ArticleRequest $request) 
    { 
     if ($request->hasFile('file')) { 

      $file = Input::file('file'); 
      $imgTitle = $request->title; 
      $imagePath = 'uploads/' . $imgTitle . '.jpg'; 
      $request->image_path = $imagePath; 

      Article::create(array('title' => $request->title, 
       'body' => $request->body, 
       'image_path' => $imagePath)); 

      Image::make($file)->resize(300, 200)->save($imagePath); 
     } else { 
//   $file = Input::file('file'); 
      $imgTitle = $request->title; 

      $query = $imgTitle; 

      $ch = curl_init(); 

      curl_setopt($ch, CURLOPT_URL, "https://ajax.googleapis.com/ajax/services/search/images?v=1.0&q=" . urlencode($query)); 

      curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 

      $output = json_decode(curl_exec($ch)); 

//   $file = file_get_contents($output); 
      curl_close($ch); 

      $imagePath = 'uploads/' . $imgTitle . '.jpg'; 

      $request->image_path = $imagePath; 
      Article::create(array('title' => $request->title, 
       'body' => $request->body, 
       'image_path' => $imagePath)); 

      Image::make($output)->resize(300, 200)->save($imagePath); 

     } 

    } 
+0

Нечеткие, не по теме (с запросом внешних инструментов) и слишком широкие. Перед публикацией вопроса просмотрите http://stackoverflow.com/help/on-topic. –

ответ

1
<?php 
$query = 'Foobar'; 
$ch = curl_init(); 
// set url 
curl_setopt($ch, CURLOPT_URL, "https://ajax.googleapis.com/ajax/services/search/images?v=1.0&q=".urlencode($query)); 

//return the transfer as a string 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 

// $output contains the output string as json 
$output = json_deocde(curl_exec($ch)); 

// close curl resource to free up system resources 
curl_close($ch); 

Бу Я не рекомендую, чтобы программа решила, какой образ он должен принять. Возможно, у вас возникнет проблема с авторским правом. Лучше установить pic по умолчанию.

+0

Спасибо, я попробую, это просто упражнение. – qr11