쿼리 결과를 CSV 파일로 내보내고 있습니다. 코드는 다음과 같습니다.CSV 파일이 여러 레코드를 가져 오는 중
$query = "SELECT DATE(punchdetails.punchin) as punchday,punchdetails.punchin,punchdetails.punchout,employeedetails.employeename
FROM punchdetails join(employeedetails) ON punchdetails.employeeid=employeedetails.employeeid
AND punchdetails.employeeid=$employeeid AND DATE(punchdetails.punchin)=$fromdate";
header("Content-type: application/csv");
header("Content-Disposition: attachment; filename=file.csv");
header("Pragma: no-cache");
header("Expires: 0");
ini_set('display_errors',1);
$private=1;
error_reporting(E_ALL^E_NOTICE);
$select_c = mysql_query($query);
while ($row = mysql_fetch_array($select_c))
{
$intime = strtotime($row['punchin']);
$mysqlintime = date('H:i:a', $intime);
$outtime = strtotime($row['punchout']);
$mysqlouttime = date('H:i:a', $outtime);
$result.=$row['employeename'].','.$row['punchday'].','.$mysqlintime.','.$mysqlouttime;
$result.="\n";
echo $result;
}
쿼리를 실행할 때 레코드가 올바르게 반환됩니다. 그러나 쿼리의 결과를 CSV 파일로 다운로드하면 레코드가 중복됩니다. 나는 점점 아니에요
Sonu,2013-09-26,10:55:am,11:12:am
Sonu,2013-09-26,10:55:am,11:12:am
Kristo,2013-09-26,11:23:am,11:24:am
문제가 무엇 : 아래 그림과 같이 나는 결과 csv 파일 데이터를 얻고있다. 아무도 나를 해결할 수 있습니까? 미리 감사드립니다.
복제본을 구합니까? 모든 레코드 또는 일부 레코드? 또한 쿼리를 실행할 때 정확한 레코드를 반환한다고 말하면 어떻게 테스트 했습니까? –
결과 쿼리를 echo하고 phpmyadmin에서 실행했습니다. 현재 나는 쿼리를 만족하는 레코드가 2 개 밖에 없습니다. 첫 번째 레코드 만 복제됩니다. – Jenz
* sidenote : * 더 이상 사용되지 않는'mysql_ * '함수 사용을 중단하십시오. 대신에 MySQLi 또는 PDO를 사용하십시오. – Raptor