Pegas
Новичок
Запись данных из текстового файла в таблицу
помогите написать функу для импорта данных из текстового файла в БД mysql. впоследствии будет рекурсивная выборка из базы.
есть файл следующего вида (количество полей может изменяться):
номер товара|уровень|наименование|наличие|цена1|цена2
100|1|МЕТАЛЛ
100|2|ТРУБА
100100|3|труба 1/2"|1|30.00|25.00
100200|3|труба 3/4"|0|18.00|15.00
в принципе я уже написал функу и она работает, единственно необходимо добавить формирование полей id и par_id для рекурсивного вывода:
function loadFile($usertable, $dbname, $file_db)
{
$file=file($_SERVER['DOCUMENT_ROOT'].$file_db);
$col=count($file);
$id=0;
while (list($k, $v)=each($file))
{
$line=explode('|', $v);
$m=0;
foreach($line as $key=>$value)
{
switch ($key)
{
case 0: $colName[$key]='idprod';
break;
case 1: $colName[$key]='level';
break;
case 2: $colName[$key]='text1';
break;
case 3: $colName[$key]='text2';
break;
case 4: $colName[$key]='text3';
break;
case 5: $colName[$key]='text4';
break;
}
if ($m==0)
{
$query=mysql_query("INSERT IGNORE INTO $usertable (id, ".$colName[$key].") VALUES ('".++$id."', '".$value."');");
$m=1;
}
else
$query=mysql_query("UPDATE IGNORE ".$usertable." SET id='".$id."', ".$colName[$key]."='".$value."';");
}
}
}
}
помогите написать функу для импорта данных из текстового файла в БД mysql. впоследствии будет рекурсивная выборка из базы.
есть файл следующего вида (количество полей может изменяться):
номер товара|уровень|наименование|наличие|цена1|цена2
100|1|МЕТАЛЛ
100|2|ТРУБА
100100|3|труба 1/2"|1|30.00|25.00
100200|3|труба 3/4"|0|18.00|15.00
в принципе я уже написал функу и она работает, единственно необходимо добавить формирование полей id и par_id для рекурсивного вывода:
function loadFile($usertable, $dbname, $file_db)
{
$file=file($_SERVER['DOCUMENT_ROOT'].$file_db);
$col=count($file);
$id=0;
while (list($k, $v)=each($file))
{
$line=explode('|', $v);
$m=0;
foreach($line as $key=>$value)
{
switch ($key)
{
case 0: $colName[$key]='idprod';
break;
case 1: $colName[$key]='level';
break;
case 2: $colName[$key]='text1';
break;
case 3: $colName[$key]='text2';
break;
case 4: $colName[$key]='text3';
break;
case 5: $colName[$key]='text4';
break;
}
if ($m==0)
{
$query=mysql_query("INSERT IGNORE INTO $usertable (id, ".$colName[$key].") VALUES ('".++$id."', '".$value."');");
$m=1;
}
else
$query=mysql_query("UPDATE IGNORE ".$usertable." SET id='".$id."', ".$colName[$key]."='".$value."';");
}
}
}
}