Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Kako se koristi MVC

[es] :: PHP :: PHP za početnike :: Kako se koristi MVC

[ Pregleda: 1576 | Odgovora: 0 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

BLACK_SWORD

Član broj: 212173
Poruke: 171
87.250.100.*

Sajt: www.artwebdizajn.com


+3 Profil

icon Kako se koristi MVC28.02.2012. u 11:04 - pre 147 meseci
Pozdrav!

Može li mi neko objasniti zašto sluzi "model" u mvc?

Koristim CodeIgniter framework znam da se u modelu radi sa bazom podataka al opet ne znam šta stavljat u model a šta u contorller.

Evo naprimjer skripta za potvrdu registracije (aktivacijski email)


Code:


<?php

class User extends CI_Controller
{
    public function __construct()
    {
        parent::__construct();
        $this->load->model('User_model');
    }



    public function activate()
    {
        if (($this->uri->segment(3) === FALSE) OR ($this->uri->segment(4) === FALSE))
        {
            redirect();
        }
        else
        {
            $id_user = $this->uri->segment(3);
            $validation_code = $this->uri->segment(4);

            if ($this->session->userdata('logged_in'))
            {
                $this->logout(uri_string());
            }

            $data = $this->User_model->activate($id_user, $validation_code);

            if ( ! $data)
            {
                $this->session->set_flashdata('message', 'Link je neispravan.');
                redirect('user/register');
            }
            elseif ($data == 'is_activated')
            {
                $this->session->set_flashdata('message', 'Račun je već aktiviran.');
                redirect('user/register');
            }
            else
            {
                $this->session->set_flashdata('message', 'Uspiješno ste aktivirali račun, sad se možete ' . anchor('user/login', 'prijavit', array('title' => 'Prijava')) . '.');
                redirect('user/register');
            }
        }
    }

}




models
Code:


class User_model extends CI_Model
{
    function __construct()
    {
        parent::__construct();
    }

    function activate($id_user, $validation_code)
    {
        $id_user = (int)$id_user;
        $query = $this->db->query("SELECT `activated`, `validation_code` FROM `users` WHERE `id_user` = $id_user LIMIT 1");

        if ($query->num_rows() != 0)
        {
            $row = $query->row();

            if ($row->activated == 1)
            {
                return 'is_activated';
            }
            elseif ($row->validation_code == $validation_code)
            {
                $this->db->query("UPDATE `users` SET `activated` = 1, `ip_address` = '" . $this->input->ip_address() . "' WHERE `id_user` = $id_user LIMIT 1");
                return TRUE;
            }
            return FALSE;
        }
        return FAlSE;
    }
}




I dali je ovo vako isravno uradjeno?

Hvala
 
Odgovor na temu

[es] :: PHP :: PHP za početnike :: Kako se koristi MVC

[ Pregleda: 1576 | Odgovora: 0 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.