Ich übergab Parameter von Sicht zu Controller über URL. Jetzt möchte ich es vom Controller zum Modell senden, damit ich damit Daten aus Tabellen auswählen kann. Hier ist mein Code:Wie Daten von der Steuerung zu Modellen in Codeigniter übergeben werden
Controller:
function view(){
if(isset($_GET['r'])) {
$rank = $_GET['r'];
}
$rank=$this->uri->segment($rank);
$this->load->model('names_rank');
$data=$this->names_rank->get_names($rank);
print_r($rank);
}
Modell:
function get_names($rank){
$this->db->select('u.*,v.*');
$this->db->from('unit_member u, Vyeo v');
$this->db->where('v.fno = u.fno');
$this->db->where('u.present = ""');
$this->db->where('v.rank', $rank);
$this->db->where('v.date_of_end="0000-00-00"');
$query = $this->db->get();
return $query->result_array();
}
dies ist das Ergebnis:
Ein PHP-Fehler aufgetreten Schwere: Warnung Nachricht: Fehlende Argument 1 für Names_rank :: get_names(), aufgerufen in C: \ xampp \ htdocs \ unit \ application \ Controller \ Names.php auf der Leitung 32 und
definiert
'$ rank' wird undefiniert, wenn' $ _GET ['r'] 'nicht gesetzt ist, also würde ich entweder zurückgeben, wenn es nicht gesetzt oder auf $ rank gesetzt ist auf einen Standardwert – winhowes
Nur eine Anmerkung in CI3-Versionen Dateien und Klasse sollte ersten Buchstaben Großbuchstaben nur names.php zu Names.php – user4419336
es ist mehr eine Konsistenz-Richtlinie als streng durchgesetzt (in diesem Stadium sowieso). Ich befolge dies streng, genauso wie die Benennung meiner Modelle Model_name_model.php zu –