быдлокодик импорта из csv

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
function import_csv(
$table, // Имя таблицы для импорта
$afields, // Массив строк - имен полей таблицы
$filename, // Имя CSV файла, откуда берется информация
// (путь от корня web-сервера)
$delim=',', // Разделитель полей в CSV файле
$enclosed='', // Кавычки для содержимого полей
$escaped='"', // Ставится перед специальными символами
$lineend=';', // Чем заканчивается строка в файле CSV
$hasheader=FALSE){ // Пропускать ли заголовок CSV
$f = file($filename);
$f = str_replace(";", "), (", $f);
$f = substr($f, 0, strlen($f) - strlen("), ("));
$f = str_replace(",", ", ", $f);
$q_import = "INSERT INTO " . $table . " (" . implode(", ", $afields) . ") VALUES (" . $f . ");";
/*if($hasheader) $ignore = "IGNORE 1 LINES ";
else $ignore = "";
$q_import =
"LOAD DATA INFILE '".
$_SERVER['DOCUMENT_ROOT'].$filename."' INTO TABLE ".$table." ".
"FIELDS TERMINATED BY '".$delim."' ENCLOSED BY '".$enclosed."' ".
" ESCAPED BY '".$escaped."' ".
"LINES TERMINATED BY '".$lineend."' ".
$ignore.
"(".implode(',', $afields).")"
;*/
echo $q_import;
return mysql_query($q_import);
}