sql >> Database teknologi >  >> RDS >> Mysql

Henter information fra databasen MYSQL &Codeigniter

Der er et par ting, der kunne afklares:

  • En model er en enhed, der forbliver i databasen. I dit tilfælde:Medlemskab
  • En controller er ansvarlig for at indlæse modellen, og videregive den til den visning, der skal vises
  • En view skal kun have html-markering, ingen funktioner, ingen logik.

Database

Forudsat at din database har strukturen nedenfor.

+---------------+-----------+------------+--------------------+ | id_membership | username | name | email | +---------------+-----------+------------+--------------------+ | 1 | Marishka | marishkapv | [email protected] | | 2 | johndoe | John | [email protected] | | 3 | dennisv | Dennis | [email protected] | +---------------+-----------+------------+--------------------+

Model

Du kan bygge din model class Membership extends CI_Model/application/models/membership.php fil.

class Membership extends CI_Model {

    function __construct()
    {
        parent::__construct();
    }

    function member_here()
    {
        $this->db->select('');
        $this->db->from('membership');
        $this->db->where('username',$this->input->post('username'));
        $q = $this->db->get('');

        if($q->num_rows() > 0) 
        {
            $data = array();
            foreach($q->result() as $row) 
            {
                $data=$row;
            }
            return $data;
        }
    }
}
 

Controller

Antag, at du har en login-side på example.com/index.php/login , bør dette ligge på /application/controllers/login.php som nedenfor:

class Login extends CI_Controller
{
    function __construct()
    {
        parent::__construct();
    }

    public function index()
    {
        $this->load->view('login_view');
    }

    public function result()
    {
        $this->load->model('membership');
        $data['member'] = $this->membership->member_here(); 
        $this->load->view('result_view', $data);
    }
}
 

Ser ud som om modellerne er indlæst, kaster disse to linjer:

//Load the model in make use of its functions
$this->load->model('membership'); 

//load the row whit the given username
//the result is assigned to array with the key "member", in the view you access this
//value with $member var
$data['member'] = $this->membership->member_here(); 
 

Visninger

Som du bemærkede i controllerkoden, er der to visningsfiler, login_view og result_view . Den første vil vise en html-formular, hvor du kan indsætte brugernavnet for at udløse en udvalgt forespørgsel. result_view vis medlemmets information i henhold til det valgte medlemskab

login_view.php

<html>
    <head></head>
    <body>
    <form action="login/result" method="post">
        Type your username: <input type="text" name="username" />
        <input type="submit" value="Load from database" />
    </form>
    </body>
</html>
 

result_view.php

<h4>Details:</h4>
<p>
Id: <?=$member->id_membership?> <br />
Username: <?=$member->username?> <br />
Email: <?=$member->email?>
</p>
 


  1. Er der en måde at konvertere alle eksisterende tabeldata til UTF8-sortering?

  2. Sådan udtrækkes dato og klokkeslæt fra et strengtidsstempel i java

  3. Hvordan omdøber jeg hurtigt en MySQL-database (ændrer skemanavn)?

  4. PHP:Hent billede fra MySQL ved hjælp af PDO