Witam,
Prosiłbym o jakąkolwiek pomoc w stworzeniu mojego przykładowego, testowego serwisu ogłoszeniowego w php.
Jestem jeszcze dość młody i mam dość sporą wiedzę na temat php. Moim celem jest stworzenie takiego, właśnie, serwisu internetowego w tym języku programowania. Chcę to zrobić w czystym php, z uwagi, że traktuję to jako ciągłe przyswajanie i utrwalanie nowej wiedzy w tym temacie.
Przedstawię teraz moją planowaną koncepcję zrobienia tej aplikacji:
1.Na początek schemat bazy danych:
- tabele:
users:
id_usera INT(11)
id_koszyka INT(11)
id_ogłoszenia INT(11)
id_portfela INT(11)
imię VARCHAR
nazwisko VARCHAR
email VARCHAR
login VARCHAR
hasło VARCHAR
id_roli INT(4).
role:
id_roli INT(4)
nazwa_roli VARCHAR
alias VARCHAR.
kategorie:
id_kategorii INT(11)
nazwa_kategorii VARCHAR.
podkategorie:
id_podkategorii INT(11)
id_kategorii INT(11)
nazwa_podkategorii VARCHAR.
ogłoszenia:
id_ogłoszenia INT(11)
id_usera INT(11)
id_podkategorii INT(11)
id_produktu INT(11)
temat VARCHAR
tresc TEXT
data_dodania
data_wygaśnięcia
produkty:
id_produktu INT(11)
id_ogłoszenia INT(11)
id_usera INT(11)
nazwa_produktu VARCHAR
koszt FLOAT
zdjęcie
marka VARCHAR
stan ( nowe, używane ) BOOL.
koszyk:
id_koszyka INT(11)
id_produktu INT(11)
id_usera INT(11)
nazwa_produktu VARCHAR
koszt FLOAT
zdjęcie
marka VARCHAR
ilość_produktów INT(11)
cena_ilości FLOAT.
portfel:
id_portfela INT(11)
id_usera INT(11)
kwota FLOAT
punkty FLOAT.
zamówienia:
id_zamówienia INT(11)
id_ogłoszenia INT(11)
id_koszyka INT(11)
data_dodania
data_wygaśnięcia
stan ( aktywne, nieaktywne ) BOOL
id_portfela.
Komentarze:
id_komentarza INT(11)
id_usera INT(11)
id_ogłoszenia INT(11)
temat_komentarza VARCHAR
treść_komentarza VARCHAR
data_dodania_komentarza.
Oto funkcjonalności jakie będą zawierać się na stronie:
1.System rejestracji i logowania, walidacja danych i zabezpieczenie przed wstrzykiwaniem sql.
2.Nadawanie użytkownikom ról( admina, usera i partnera ) i przydzielanie dostępu do poszczególnych części strony.
3.Panel Usera:
a) dodawanie ogłoszeń
b) wyświetlanie ogłoszeń ( wszystkich )
c) wyświetlanie ogłoszeń przydzielonych do danej kategorii i podkategorii
d) edycja i usuwanie tylko swoich własnych ogłoszen
e) możliwość dodawania komentarzy do ogłoszeń:
- dodawanie, wyświetlanie, edycja i usuwanie( tylko swoich własnych ) komentarzy
f) możliwość kupowania produktów z ogłoszeń, stworzenie koszyka, autoryzacja płatności w transferuj.pl lub paypal.
4.Panel Admina i Partnera ( póki co jest to najmniej ważne).
5. Wyszukiwarka.
Z częścią tych funkcjonalnosci jak np. logwanie, rejstracja, walidacja, zabezpieczenie przed wstrzykiwanie sql,
kategorie, podkategorie, ogloszenia, dodawanie, edycja, usuwanie dam sobie sam radę, ale z resztą to już zaczynają się schody.
Na koniec moja koncepcja co do koszyka:
Do wypisanych ogłoszeń dodajemy link dodaj do koszyka, k
tóry przekierowywuje nas do pliku koszyk.php.
Tam pobrane juz wcześniej zmienne sesyjne zapisujemy do sesji w postaci tablicy. i dodajemy ją insertem do tabeli koszyk. Tworzymy rwnież zmienną $_SESSION['koszyk'] = true;
wyciągamy dane z tabeli koszyk i pokazujemy całą tablicę sesyjną na ekaranie.
Dodatkowo jeśli istnieje zmienna $_SESSION['koszyk'] to znaczy ze cos jest w koszyku i ta opcja jest pokazywana w menu, jesli nie to koszyk jest pusty i nie pokazujemy go w menu.
Proszę o waszą pomoc, opinie i sugestie.
Pozdrawiam