prepare(" SELECT b.batch_number, b.total_urls, b.sent_count, b.upload_type, b.created_at, p.project_name FROM survey_url_batches b JOIN projects p ON b.project_id = p.project_id WHERE b.project_id = ? AND b.batch_number = ? AND p.client_id = ? "); $stmt->execute([$project_id, $batch_number, $client_id]); $batch = $stmt->fetch(PDO::FETCH_ASSOC); if (!$batch) { $_SESSION['error'] = "Batch not found"; header('Location: manage-survey-urls.php?project_id=' . urlencode($project_id)); exit; } // Get pagination $page = isset($_GET['page']) ? max(1, (int)$_GET['page']) : 1; $per_page = 50; $offset = ($page - 1) * $per_page; // Get URLs with pagination $stmt = $shopPdo->prepare(" SELECT id, client_url, rr_proxy_url, unique_identifier, is_sent, sent_to_user_id, sent_at, created_at FROM survey_urls WHERE project_id = ? AND batch_number = ? ORDER BY id ASC LIMIT ? OFFSET ? "); $stmt->execute([$project_id, $batch_number, $per_page, $offset]); $urls = $stmt->fetchAll(PDO::FETCH_ASSOC); $total_pages = ceil($batch['total_urls'] / $per_page); } catch (Exception $e) { $error = "Error loading URLs: " . $e->getMessage(); } ?>