Мой поставщик телекоммуникационных услуг отправляет мне отчет каждый раз, когда сообщение гаснет. Я написал очень простой PHP-скрипт, который получает значения через HTTP GET. Использование fwrite Я пишу параметр запроса в файл CSV. Имя файла – report.csv с текущей датой в качестве префикса.
Вот код:
<?php error_reporting(E_ALL ^ E_NOTICE); date_default_timezone_set('America/New_York'); //setting a the CSV File $fileDate = date("mdY") ; $filename = $fileDate."_Report.csv"; $directory = "./csv_archive/"; //Creating handle $handle = fopen($filename, "a"); //These are the main data field $item1 = $_GET['item1']; $item2 = $_GET['item2']; $item3 = $_GET['item3']; $mydate = date("Ymd H:i:s") ; $pass = $_GET['pass']; //testing the pass if (isset($_GET['pass']) AND $_GET['pass'] == "password") { echo 'Login successful'; // just making sure the function could write to it if (!$handle = fopen($directory.$filename, 'a')){ echo "Cannot open file ($filename)"; exit; } //writing the data I receive through query string if (fwrite($handle, "$item1,$item2,$item3,$mydate \n") === FALSE) { echo "Cannot write to file ($filename)"; exit; } fclose($handle); } else{ echo 'Login Failure please add the right pass to URL'; } ?>
Скрипт делает то, что я хочу, но единственной проблемой является несогласованность, а это означает, что отсутствует значительная часть записей (около половины отчета). Когда я войду в свою учетную запись, я могу получить полный отчет.
Я не знаю, что мне нужно сделать, чтобы исправить это, пожалуйста, совет.