簡體   English   中英

將具有不同列數的csv文件插入mysql表

[英]inserting csv file with different amount of columns into mysql table

試圖使用php命令fcsvget將csv文件中的某些數據插入到mysql表中,但是很快就會有人告訴我即時消息出了問題。 即時通訊沒有數據進入和加載頁面時出錯。

csv文件具有不同的標題名稱和要進入的表的列數。

到目前為止,這是我的代碼。

<?php

// set local variables
$connect = mysql_connect("localhost","db","password") or die('Could not connect: ' . mysql_error());
$handle = fopen("test.csv", "r");

// connect to mysql and select database or exit 
mysql_select_db("db", $connect);

// loop content of csv file, using comma as delimiter

while (($data = fgetcsv($handle, 1000, ",")) !== false) {
$Product_ID = $data[0];
$Model = $data[1];

// entry insert
$query = "INSERT into products_test  (products_id, products_model) VALUES '$Product_ID', $Model";


mysql_query($query);
if (mysql_affected_rows() <= 0) {

// no rows where affected by update query
}
} else {
// entry doesn't exist continue or insert...
}

mysql_free_result($result);
}

fclose($handle);
mysql_close($connect);

?>

檢查您的代碼。

    } else {
     // entry doesn't exist continue or insert...
    }

沒有任何作用,因為沒有為此而啟動任何IF。 唯一的那個

   if (mysql_affected_rows() <= 0) {

    // no rows where affected by update query
  }

在“ Else”語句之前已經關閉。 我無法進入您的查詢,但這是我第一次看到的內容

while (($data = fgetcsv($handle, 10000, "|")) !== false) {
$Product_ID =  $data[0];
$Model = $data[1];
$HighPic = $data[2];
$ManuId = $data[3];
$parent_id = $data[7];
$Image = $data[13];
$Price = $data[14];
$Supplier = $data[15];
$Stock = $data[17];



// entry insert
$query = "INSERT into products_test (products_id, products_model, products_image, manufacturers_id, products_parent_id, icecat_manfimg, products_price, icecatcode, products_quantity) VALUES ($Product_ID, $Model, $HighPic, $ManuId, $parent_id, $Image, $Price, $Supplier, $Stock)" ;

mysql_query($query);
} 

mysql_free_result($result);


fclose($handle);
mysql_close($connect);

?>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM