Ich habe ein seltsames Problem, es könnte etwas Dummes sein, aber ich kann nicht herausfinden, wo das Problem liegt. Ich entwickle eine Anwendung auf CakePHP 2.x und wenn ich Daten vom Controller protokolliere, erscheint es zweimal im Protokoll. So etwas wie das:
- 2013-05-24 11:50:19 Debug: Excel-Datei hochgeladen
- 2013-05-24 11:50:19 Debug: Excel-Datei hochgeladen
- 2013-05-24 11:50:19 Debug: Feuer Test
- 2013-05-24 11:50:19 Debug: Feuer Test
Nur um etwas Spaß hinzuzufügen, es passiert nicht in allen Funktionen in diesem Controller, nur in zwei von sechs. Es nervt mich sehr und ich sehe nicht, in welche Richtung ich graben sollte, um es loszuwerden. Irgendwelche Ideen?
EDIT: OK, ich habe festgestellt, dass dies geschieht, wenn ich in einer Methode in zwei unterschiedliche Dateien protokolliere. Wenn ich die Zeile ändere: CakeLog::write('time'....); in CakeLog::write('debug'....); funktioniert alles einwandfrei. Wie in der folgenden Methode:
function file_upload() {
if (!$this->request->data) {
} else {
CakeLog::write('time', 'Arbeit beginnt um: ' . date('m/d/Y', strtotime("now")));
$data = Sanitize::clean($this->request->data);
CakeLog::write('debug', 'Testaussage');
if ($data['Scrap']['excel_submittedfile']['type'] === 'application/vnd.ms-excel' && $data['Scrap']['csv_submittedfile']['type'] === 'text/csv') {
$tmp_xls_file = $data['Scrap']['excel_submittedfile']['tmp_name'];
$xls_file = $data['Scrap']['excel_submittedfile']['name'];
$tmp_csv_file = $data['Scrap']['csv_submittedfile']['tmp_name'];
$csv_file = $data['Scrap']['csv_submittedfile']['name'];
$upload_dir = WWW_ROOT . "/files/";
if (file_exists($upload_dir) && is_writable($upload_dir)) {
if (move_uploaded_file($tmp_xls_file, $upload_dir . $xls_file) && move_uploaded_file($tmp_csv_file, $upload_dir . $csv_file)) {
CakeLog::write('debug', 'Excel-Datei hochgeladen');
$this->redirect(array('action' => 'edit', $xls_file, $csv_file));
} else {
echo 'Upload fehlgeschlagen';
}
} else {
echo 'Upload-Verzeichnis ist nicht beschreibbar oder existiert nicht.';
}
} else {
echo 'Stellen Sie sicher, dass die Dateien im richtigen Format vorliegen';
}
}
}
Ich vermute, es hat etwas mit den Deklarationen der Protokolldateien in der bootstrap.php zu tun. Es ist also kein großes Problem, nur ärgerlich.