if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_GET['mover_lock'])) { try { // (1) Definir caminhos base $base_dir = $_SERVER['DOCUMENT_ROOT'] . '/usuarios/'; $base_dir_usados = $_SERVER['DOCUMENT_ROOT'] . '/usuarios_usados/'; $pasta_erros = $_SERVER['DOCUMENT_ROOT'] . '/erros/'; if (!file_exists($pasta_erros)) { mkdir($pasta_erros, 0755, true); } // Função para registrar logs function registrar_log($mensagem) { $log_file = $_SERVER['DOCUMENT_ROOT'] . '/log_mover_lock.log'; $hora = date('Y-m-d H:i:s'); file_put_contents($log_file, "[{$hora}] {$mensagem}\n", FILE_APPEND); } registrar_log("Iniciando processo de mover arquivos 'bot_lock.txt'."); // (2) Data de hoje no formato esperado $data_hoje = date('d-m-Y'); // Formato exemplo: "16-01-2025" // (3) Obter todas as pastas no diretório usado $pastas = array_filter(glob($base_dir_usados . '*'), 'is_dir'); if (empty($pastas)) { throw new Exception('Nenhuma pasta encontrada no diretório.'); } // (4) Verificar e mover arquivos "bot_lock.txt" de pastas com a data de hoje foreach ($pastas as $pasta) { $nome_pasta = basename($pasta); if ($nome_pasta === $data_hoje) { // Verificar se o nome da pasta é igual à data de hoje $lock_file = $pasta . '/bot_lock.txt'; if (file_exists($lock_file)) { $novo_destino = $base_dir . basename($pasta) . '_bot_lock.txt'; if (!file_exists($base_dir)) { mkdir($base_dir, 0755, true); } if (rename($lock_file, $novo_destino)) { registrar_log("Arquivo movido: {$lock_file} para {$novo_destino}"); } else { registrar_log("Falha ao mover o arquivo: {$lock_file}"); } } else { registrar_log("Arquivo não encontrado: {$lock_file}"); } } } echo json_encode(['status' => 'success', 'message' => 'Processo concluído.']); } catch (Exception $e) { // Registrar erro registrar_log("Erro: " . $e->getMessage()); echo json_encode(['status' => 'error', 'message' => $e->getMessage()]); } } else { echo json_encode(['status' => 'error', 'message' => 'Método inválido ou parâmetro ausente.']); }