2016-09-10 2 views
0

Я новичок в CodeIgnitor и продолжаю получать ошибку 404, пожалуйста, сообщите, где я иду не так, ниже моя структура и страницы. имя базы данных: stoma_store_suppliers, базы данных полей: SupplierID, Имя поставщика, supplier_phoneCodeIgniter 404

Модели Страница: _____________ suppliers.php

<?php 
Class Suppliers extends CI_Model 
{ 
public function get_suppliers($supplierid) { 
if($supplierid != FALSE) { 
$query = $this->db->get_where('store_suppliers', array('supplierid' =>$supplierid)); 
return $query->row_array(); 
} 
else { 
return FALSE; 
} 
} 
} 
?> 

Контроллеры Page__________ suppliers.php

<?php if (!defined('BASEPATH'))exit('No direct script access allowed'); 

class Suppliers extends CI_Controller { 

public function show($supplierid) { 
$this->load->model('suppliers'); 
$store_suppliers = $this->suppliers->get_suppliers($supplierid); 
$data['supplier_name'] = $suppliers['supplier_name']; 
$data['supplier_phone'] = $suppliers['supplier_phone']; 
$this->load->view('index', $data); 
} 
} 
?> 

Просмотров страницы: индекс .php

<?php print $supplier_name; ?> 
<?php print $supplier_phone; ?> 
+0

добавить путь к 'index.php', помещенный в поле зрения, а имя файла контроллера должно быть' Suppliers.php' –

+2

Не имеют имени модели, аналогичного контроллеру. Suppliers_model было бы лучше Имя, которое вы должны посмотреть на codeigniter phpstyle guide – user4419336

+0

Wolfgang, я не уверен, что вы имеете в виду, не имея имени модели, такого же, как контроллер, можете ли вы объяснить, thx? – DEDE

ответ

1

Необходимые вещи, чтобы получить доступ к любой странице из CodeIgniter являются:

  1. Первая буква файла контроллера должен быть капитал, как Suppliers.php.
  2. Первая буква определения класса должна соответствовать имени файла, например. для Suppliers.php было бы class Suppliers extends CI_Controller.
  3. Если необходимо использовать базу данных, то в файле config/database.php необходимо установить правильные сведения о соединении.

Ниже приведены шаги для доступа к любой странице, созданной в кодеигниторе.

  1. Запишите свой домен сайта, а затем index.php, например. http://mysitedomain.com/index.php/suppliers
  2. Чтобы удалить необходимость в index.php в URL-адрес, добавьте файл .htaccess в корневую папку. Details here. В этом случае URL будет http://mysitedomain.com/. Теперь имя домена будет сопровождаться именем контроллера и функцией, к которой необходимо получить доступ, например.
  3. Чтобы передать аргументы контроллеру с использованием URL-адреса, добавьте их после сегментов контроллера/функции, например. http://mysitedomain.com/user/show/dede
  4. Если контроллер имеет индекс функции - public function index(){ - она ​​может быть доступна двумя способами:

    A) http://mysitedomain.com/suppliers/index

    B) http://mysitedomain.com/suppliers

Если /function/argument сегменты URI не предусмотрены после имени контроллера, codeigniter по умолчанию вызовет index().