Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

PHP codeigniter MVC baza danych

piotrek8940 28 Lut 2017 22:11 456 4
  • #1 28 Lut 2017 22:11
    piotrek8940
    Poziom 8  

    Witam.
    Chciałbym prosić o pomoc. Mianowicie, zaczynam przygodę z Codeigniter i PHP.
    Mam zrobioną bazę w Phpmyadmin mysql i teraz mam tabele, powiedzmy produkty a w niej kolumny: id / magazyn / produkt / szt.
    Chciałbym coś takiego napisać, że jak kolumna szt. będzie 0, to ma mi cały wiersz usunąć.

    Jak to zrealizować? Co napisać w Controlerze, co w modelu, a co w widoku?
    Może mi ktoś to objaśnić? Z góry wielkie dzięki.

    Pozdrawiam.

    0 4
  • #2 01 Mar 2017 10:20
    arnoldziq
    Moderator Programowanie

    Nie znam Codeigniter, ale od strony PHP, to dosłownie kilka linii kodu:

    Kod: php
    Zaloguj się, aby zobaczyć kod

    Oczywiście trzeba kod pozmieniać, żeby odzwierciedlał ustawienia twojej bazy, nazwy tabel, kolumn itd.

    0
  • #3 01 Mar 2017 10:51
    piotrek8940
    Poziom 8  

    Witaj
    Dziękuję za odpowiedź
    Właśnie w codeigniterze trochę to inaczej się robi nie muszę łączyć się bazą w kodzie ...tzw mam osobny plik config i tam podaje dane do bazy ...nie ma czegoś takiego jak otwrdzie polaczenia z baza i zamkniecie

    0
  • #4 02 Mar 2017 13:10
    JacekCz
    Poziom 35  

    piotrek8940 napisał:

    Jak to zrealizować? Co napisać w Controlerze, co w modelu, a co w widoku?
    Może mi ktoś to objaśnić? Z góry wielkie dzięki.
    Pozdrawiam.


    Dla mnie kasowanie zer, to założenia do Modelu. Niektórzy by dyskutowali, że to 'reguły biznesowe' (czyli część kodu bardziej płynna) ale też związana z modelem.
    Po czym poznać że Model? Postawić swoją hipotezę (np tu dyskutowane kasowanie zer) 'co, gdy podobny stan zostanie osiągnięty z innej ścieżki, z innego ekranu/strony'. Jesli chcesz utrzymać swoją zasadę z każdej możliwej ścieżki, to Model.

    Proszę rygorystów o spokój :) tłumaczenie obrazowe.

    PS. Nie wiem, jak w szerszym kontekście, podobny program w realnym wdrożeniu był ustawiał flagę logiczną 'ukryj' albo puste pole (null) ustawiał w timestamp 'data ukrycia'. W programowaniu biznesowym byty, które dziś stały się nieaktualne, nie są usuwane fizycznie, najwyżej ukrywane.
    Dobrze zaprojektowana baza z regułami integralności (mało popularne niestety w MySQL) powinna takich zasad bronić przed kasowaniem. To na marginesie

    0
  • #5 02 Mar 2017 13:31
    piotrek8940
    Poziom 8  

    Dzięki za podpowiedź właśnie zrobiłem to w modelu i działa

    Temat do zamknięcia pozdrawiam i dziękuje

    0