2015-08-29 187 views
2

請幫我陣列如何插入從表像這樣每TD數據:我想插件組數據到MySQL數據庫

插入示例:

TRXID>表的mysql TRXID VALUE 1045629等。

這裏是我的代碼

$dom = new DOMDocument(); 
 
libxml_use_internal_errors(true); 
 
$dom->loadHTML($output); 
 
libxml_clear_errors(); 
 
$xpath = new DOMXpath($dom); 
 

 
$data = array(); 
 

 
// get all table rows and rows which are not headers 
 
//$table_rows = $xpath->query('//table[@class="report_table"]//tr[2]//td[8]');//tabel sukses 
 
$table_rows = $xpath->query('//table[@class="report_table"]'); 
 

 
foreach($table_rows as $row => $tr) { 
 
    foreach($tr->childNodes as $td) { 
 
     $data[$row][] = preg_replace('~[\r\n]+~', '', trim($td->nodeValue)); 
 
    } 
 
    $data[$row] = $data[$row]; 
 
    //$data[$row] = $data[$row][1]; 
 
    // $data[$row] = $data[$row][2]; 
 
    //$data[$row] = $data[$row][3]; 
 
    
 
} 
 

 
echo '<pre>'; 
 
print_r($data);

代碼顯示陣列這樣

Array 
 
(
 
    [0] => Array 
 
     (
 
      [0] => Trx ID     Member ID     NoHP Pengirim     Waktu Mulai     Waktu Selesai     NoHP Di isi     Kode Voucher     Keterangan 
 
      [1] => 1045629       SY3345       +6288215527644       2015-08-28 16:00:32       2015-08-28 16:01:32       081325415747            TS100       SUKSES 
 
      [2] => 1042300       SY3345       +6288215527644       2015-08-22 18:45:41       2015-08-22 18:48:55       081325415747            TS20       SUKSES 
 
      [3] => 1037299       SY3345       jpcom_cs       2015-08-14 20:08:49       2015-08-14 20:11:58       081325415747            TS50       SUKSES 
 
     ) 
 

 
    [1] => 
 
    [2] => 
 
)

SO,幫助我如何按TR/TD INSERT到mysql數據庫,其中的表使用:TRID,MEMBERID等。

+0

'輸入代碼here'不完全就像代碼看我... – icktoofay

+0

請幫我BROO .. – user2114764

回答

0

假定第一行包含表頭和他們保持不變,我已經創建了基於代碼陣列看起來像什麼(我認爲是一個示例表名稱和代碼自定義您的要求)

<?php 
$test_array = Array 
(
array 
     (
      'Trx ID     Member ID     NoHP Pengirim     Waktu Mulai     Waktu Selesai     NoHP Di isi     Kode Voucher     Keterangan', 
      '1045629       SY3345       +6288215527644       2015-08-28 16:00:32       2015-08-28 16:01:32       081325415747            TS100       SUKSES', 
      '1042300       SY3345       +6288215527644       2015-08-22 18:45:41       2015-08-22 18:48:55       081325415747            TS20       SUKSES', 
      '1037299       SY3345       jpcom_cs       2015-08-14 20:08:49       2015-08-14 20:11:58       081325415747            TS50       SUKSES' 
     ), 
array(), 
array() 
); 

//This is to filter out empty array elements to reduce number of iterations 
$test_array = array_filter($test_array); 

//String to hold values to be inserted 
$str_values_to_insert = ''; 

foreach($test_array as $value) 
{ 
    foreach($value as $key => $value_to_insert) 
    { 
     //Skip the headers section here 
     if($key === 0) 
     { 
      continue; 
     } 
     else 
     { 
      $str_values_to_insert.= "('".str_replace('       ', "', ", $value_to_insert)."'), "; 
     } 
    } 

} 

$str_values_to_insert = rtrim($str_values_to_insert, ', '); 

$str_insert_sql = "INSERT INTO TABLE XYZ ('Trx ID','Member ID', 'NoHP Pengirim', 'Waktu Mulai', 'Waktu Selesai', 'NoHP Di isi     Kode Voucher', 'Keterangan') VALES {$str_values_to_insert}"; 

print_r($str_insert_sql); 
exit; 
?> 
下面的代碼

希望這有助於

+0

THX boss..i會嘗試先 – user2114764

+0

有錯誤:警告:array_filter( )期望參數1是數組,在 – user2114764

+0

中給出的字符串爲foreach()提供的無效參數 – user2114764