2014-09-18 6 views
-1

Я очистил дату с другого веб-сайта, а затем вставляю все значения в таблицу sracp-data. Моя ценность вставляется успешно, но только вставка последнего значения.Невозможно вставить значения цикла foreach в таблицу mysql

Мои Извлечение значения выглядеть следующим образом:

enter image description here

Мой Fetching COOD: I Используется для соскабливания данных с SIMPLE HTML DOM

  include './simple_html_dom.php';  //Inlcude HTML DOM 
      $html = file_get_html('http://tacticalwalls.com/shop/'); //Scrapping site/url 
       //**ul[class=products] here is specific DIV values** 
      foreach ($html->find('ul[class=products]') as $items) { 
       foreach ($items->find('a') as $anchor) {   
        $item_a = $anchor->href; 
       } 
       foreach ($items->find('img') as $img){ 
        $item_img = $img->src; 
       } 

       $db_conn = mysql_connect('localhost', 'root', '') or die('error'); 
        mysql_select_db('db_scrap', $db_conn) or die(mysql_error()); 

        $sql = "INSERT INTO scrap_data(url, imges) VALUES ('".$item_a."', '".$item_img."')"; 

        mysql_query($sql) or die(mysql_error()); 
       } 

Моя проблема в том, как я могу вставить все значения получаются в столбце таблицы. Как < a> Вставить тег в колонку url и < img> значение тега вставить в изображение colunmn?

+0

Вы должны заменить изображение, вставив текстовый файл. –

ответ

0

Вы всегда переписываете свои $ item_a и $ item_img в своем foreach.

Вам нужно что-то вроде

$items_a = array(); 
foreach($items->find('a') as $anchor) { 
    array_push($items_a, $anchor->href) 
} 

То же самое для изображений. В конце просто взорвите массив

$item_a = implode(';', $items_a); 

и все готово.

 include './simple_html_dom.php';  //Inlcude HTML DOM 
     $html = file_get_html('http://tacticalwalls.com/shop/'); //Scrapping site/url 
      //**ul[class=products] here is specific DIV values** 
     foreach ($html->find('ul[class=products]') as $items) { 
      $items_a = array(); 
      foreach ($items->find('a') as $anchor) {   
       array_push($items_a, $anchor->href); 
      } 
      $items_img = array(); 
      foreach ($items->find('img') as $img){ 
       array_push($items_img, $img->src); 
      } 
      $item_a = implode(';', $items_a); 
      $item_img = implode(';', $items_img); 
      $db_conn = mysql_connect('localhost', 'root', '') or die('error'); 
      mysql_select_db('db_scrap', $db_conn) or die(mysql_error()); 

      $sql = "INSERT INTO scrap_data(url, imges) VALUES ('".$item_a."', '".$item_img."')"; 

      mysql_query($sql) or die(mysql_error()); 
     } 
+0

Привет, Flowna, спасибо. Но я хочу вставлять значения по одному ряду. Отдельная строка для каждого значения , . – rjony

Смежные вопросы