2016-06-29 4 views
0

의 경우 추가 된 행을 저장하지 않습니다. 첫 번째 행은 잘 저장되고 후속 호출에서는 로컬에서 실행될 때 추가 텍스트가 완벽하게 추가되지만 서버에서 실행될 때 첫 번째 행만 저장되고 모두 무시됩니다 저장 시도 후에 서버의 파일이 삭제 된 다음 '처음'시간 동안 저장하려고해도 파일을 처음 만들 때 저장 한 원래의 줄이 다시 나타납니다.file_put_contents는 서버 (PHP)

$file = 'sentQuotes-' . date("dmy") .'.txt'; 
$addNewQuote = "\r\n" .date("d/m/y") ."\t" .$email ."\t" .$qty ."\t" .$scent ."\t" .$customerPrice; 
// the LOCK_EX flag to prevent anyone else writing to the file at the same time 
file_put_contents($file, $addNewQuote, FILE_APPEND | LOCK_EX); 

unset($addNewQuote); 
+1

오류가 있습니까? 스크립트 상단의 오류보고를 켜십시오. - ini_set ('display_errors', 1); error_reporting (-1);'그리고 PHP 오류 로그에 아무것도 있는지 알려주십시오 – Darren

답변

4

캐싱의 사례가 두려운 것 같습니다.

오류 로그를보고있는 서버에 있었는데 서버에서 파일을 직접 확인하기로 결정했을 때 모든 데이터가 올바르게 저장되었다는 것을 알게되었습니다. 내 로컬 컴퓨터의 ftp 메서드 (Windows 탐색기를 사용하고 있었음)가 최신 버전을 제공하는 대신 파일을 캐싱하는 것으로 나타났습니다. Filezilla 클라이언트를 다운로드했는데 이제는 괜찮습니다.

명백한 시간 낭비에 사과!

+0

전혀 시간 낭비하지 않습니다! 그것은 나를 위해 시간 절약이 밝혀졌다 :) 코드는 잘 전개되었지만 나중에 오류없이 작동하지 않을 것이다. 몇 주 후에 다시 일하고 다시 일하는 것을 멈췄습니다! 우리의 WordPress 호스트가 URL을 많이 캐시하기 때문입니다. 그리고 캐시를 제거하면 코드가 언젠가 작동하게됩니다. – Jags