connect_error) { die("Falha na conexão: " . htmlspecialchars($mysqli->connect_error, ENT_QUOTES, 'UTF-8')); } // Preparar a consulta com pesquisa e paginação if ($search !== '') { // Utilizar consultas preparadas para prevenir SQL Injection $stmt = $mysqli->prepare(" SELECT * FROM clients WHERE name LIKE CONCAT('%', ?, '%') OR cpf LIKE CONCAT('%', ?, '%') OR email LIKE CONCAT('%', ?, '%') LIMIT ? OFFSET ? "); $stmt->bind_param("sssii", $search, $search, $search, $limit, $offset); } else { $stmt = $mysqli->prepare("SELECT * FROM clients LIMIT ? OFFSET ?"); $stmt->bind_param("ii", $limit, $offset); } // Definir os parâmetros de limite e offset $limit = RESULTS_PER_PAGE; // Executar a consulta $stmt->execute(); $result = $stmt->get_result(); ?> Listagem de Clientes

Lista de Clientes

num_rows > 0) { echo ""; // Iterar sobre cada cliente while($row = $result->fetch_assoc()) { // Escapar saídas para prevenir XSS $id = htmlspecialchars($row["id"], ENT_QUOTES, 'UTF-8'); $nome = htmlspecialchars($row["name"], ENT_QUOTES, 'UTF-8'); $cpf = htmlspecialchars($row["cpf"], ENT_QUOTES, 'UTF-8'); $telefone = htmlspecialchars($row["phone"], ENT_QUOTES, 'UTF-8'); $email = htmlspecialchars($row["email"], ENT_QUOTES, 'UTF-8'); echo ""; } echo "
Nome CPF Telefone Email Ações
$nome $cpf $telefone $email
"; // Fechar o statement $stmt->close(); } else { echo "

Nenhum cliente encontrado.

"; } // Contar o total de clientes para a paginação if ($search !== '') { $count_stmt = $mysqli->prepare(" SELECT COUNT(*) FROM clients WHERE name LIKE CONCAT('%', ?, '%') OR cpf LIKE CONCAT('%', ?, '%') OR email LIKE CONCAT('%', ?, '%') "); $count_stmt->bind_param("sss", $search, $search, $search); } else { $count_stmt = $mysqli->prepare("SELECT COUNT(*) FROM clients"); } $count_stmt->execute(); $count_stmt->bind_result($total_clients); $count_stmt->fetch(); $count_stmt->close(); // Calcular o total de páginas $total_pages = ceil($total_clients / RESULTS_PER_PAGE); // Exibir links de paginação se houver mais de uma página if ($total_pages > 1) { echo ""; } // Fechar a conexão com o banco de dados $mysqli->close(); ?>