Rejestr kontaktów biznesowych
Mini-CRM: baza kontaktów biznesowych z danymi firmy, numerem telefonu, adresem e-mail i notatkami. Wyszukiwanie po nazwisku lub firmie, edycja i usuwanie.
Rejestr kontaktów biznesowych
Mini-CRM: baza kontaktów biznesowych z danymi firmy, numerem telefonu, adresem e-mail i notatkami. Wyszukiwanie po nazwisku lub firmie, edycja i usuwanie.
CRM (Customer Relationship Management) to kluczowy system w każdej firmie. Znajomość budowania baz kontaktów z wyszukiwaniem to podstawa dla każdego programisty aplikacji biznesowych.
{ "contacts": [ { "id": 1, "name": "Jan Kowalski", "company": "Tech Corp Sp. z o.o.", "phone": "+48 123 456 789", "email": "jan.kowalski@techcorp.pl", "notes": "Kontakt w sprawie umowy na oprogramowanie", "created_at": "2026-02-10" } ]}FILTER_VALIDATE_EMAIL)<?php// Walidacja danych kontaktu$name = trim($_POST['name'] ?? '');$email = trim($_POST['email'] ?? '');$phone = trim($_POST['phone'] ?? '');
if (strlen($name) < 2) { $errors[] = "Imię i nazwisko musi mieć co najmniej 2 znaki";}if (!empty($email) && !filter_var($email, FILTER_VALIDATE_EMAIL)) { $errors[] = "Podaj prawidłowy adres e-mail";}if (!empty($phone) && !preg_match('/^(\+48\s?)?\d{3}[\s\-]?\d{3}[\s\-]?\d{3}$/', $phone)) { $errors[] = "Podaj prawidłowy numer telefonu";}
// Wyszukiwaniefunction searchContacts(array $contacts, string $query): array { if (empty(trim($query))) return $contacts; $q = mb_strtolower($query); return array_values(array_filter($contacts, fn($c) => str_contains(mb_strtolower($c['name']), $q) || str_contains(mb_strtolower($c['company'] ?? ''), $q) ));}
// Sortowanie alfabetyczneusort($contacts, fn($a, $b) => strcasecmp($a['name'], $b['name']));Twój osobisty CRM!
Zacznij od formularza i listy. Wyszukiwanie i edycja to kolejny krok. Eksport CSV to wisienka na torcie.