Excel シートの単一の列をデータベース テーブル名 admin_record にインポートしたいのですが、Excel シートは 1 つの列のみで構成され、列の名前はバーコードで、行は多数あります。
データベースに保存したいテーブル名はadmin_recordで、2つのフィールドのみで構成されています
- id (主キー)
- bar_code.
私が完全に理解できないこのコードだけを見つけてください
public function read_file($table = 'admin_record', $filename = 'example.xls') {
$pathToFile = 'uploads/' . $filename;
$this->load->library('Spreadsheet_Excel_Reader');
$data = new Spreadsheet_Excel_Reader($pathToFile);
$sql = "INSERT INTO $table (";
for($index = 1;$index <= $data->sheets[0]['numCols']; $index++){
$sql.= strtolower($data->sheets[0]['cells'][1][$index]) . ", ";
}
$sql = rtrim($sql, ", ")." ) VALUES ( ";
for ($i = 2; $i <= $data->sheets[0]['numRows']; $i++) {
$valuesSQL = '';
for ($j = 1; $j <= $data->sheets[0]['numCols']; $j++) {
$valuesSql .= "\"" . $data->sheets[0]['cells'][$i][$j] . "\", ";
}
echo $sql . rtrim($valuesSql, ", ")." ) <br>";
}
}