내 웹 사이트의 인벤토리 용 CSV 파일을 다운로드하고 업로드하는 스크립트가 있습니다. 수동으로 파일을 다운로드하여 업로드하면 모든 것이 정상입니다. 스크립트를 실행하여 파일을 다운로드하고 업로드하면 csv 파일의 모든 행 다음에 빈 행이 추가됩니다.가져온 CSV 파일에 여분의 빈 행이 추가되는 이유는 무엇입니까?
원본 소스에서 파일을 직접 다운로드하여 내 스크립트에서 업로드 한 파일과 비교하여 알 수 있습니다.
거기에서 파일을 mysql 데이터베이스로 가져옵니다.
누구나이 빈 줄이 CSV 파일에 추가되는 것을 막을 수 있습니다. 데이터베이스에 행을 업로드하고 테이블에 새로운 내용을 추가하지 않으면 문제가 발생합니다. 나는이에 대한 소스 포지 (http://phpseclib.sourceforge.net/)를 사용하고
<?php
set_time_limit(0);
ini_set('memory_limit','512M');
ini_set('upload_max_filesize', '64M');
include('Net/SFTP.php');
//Original Location (SFTP)
$sftp2 = new Net_SFTP('example.com');
if (!$sftp2->login('username', 'password')) {
exit('Login Failed');
}
//echo $sftp2->pwd() . "\r\n";
$sftp2->get('file.csv', 'file.csv');
//print_r($sftp2->nlist());
echo "Success!";
?>
:
편집 : 코드 mysql을 dB로 CSV 정보를 보낼 :
$file = "./file.csv";
$handle = fopen($file, r);
$firstentry = 0;
while($csv = fgetcsv($handle))
{
if($firstentry == 0)
{
$firstentry++;
}
else
{
$csv[7] = strtotime($csv[7]);
$csv[7] = date("Y-m-d H:i:s",$csv[7]);
if($csv[18] == 217 || $csv[18] == 38)
{
if(!mysql_query("INSERT IGNORE INTO TABLE_NAME
(Col1, Col2, Col3, Col4, Col5,
Col6, Col7, Col8, Col9, Col10,
Col11, Col12, Col13, Col14, Col15,
Col16, Col17, Col18, Col19, Col20,
Col21, Col22, Col23) VALUES
('".md5($csv[0].$csv[2])."','".addslashes($csv[0])."','".addslashes($csv[1])."','".addslashes($csv[2])."','".addslashes($csv[3])."','".addslashes($csv[4])."',
'".addslashes($csv[5])."','".addslashes($csv[6])."','".addslashes($csv[7])."','".addslashes($csv[8])."','".addslashes($csv[9])."',
'".addslashes($csv[10])."','".addslashes($csv[11])."','".addslashes($csv[12])."','".addslashes($csv[13])."','".addslashes($csv[14])."',
'".addslashes($csv[15])."','".addslashes($csv[16])."','".addslashes($csv[17])."','".addslashes($csv[18])."','".addslashes($csv[19])."',
'".addslashes($csv[20])."','".addslashes($csv[21])."')"))
{
exit("<br>" . mysql_error());
}
else
{
print_r($csv);
echo " insert complete<br><br>";
}
}
}
}
코드 다운로드를/CSV 파일을 업로드합니다.
내 수정 구슬은, 어떤 경우에 – Andy
"우리에게 몇 가지 코드를보기"LOAD 자료 INFILE' – Gordon
내 수정 구슬 '에 대한 SO 검색 말한다 나쁜 라인 - 엔딩 번역자가 말한다. –