Tengo mi controlador que es Facturar
Código PHP:
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Facturar extends CI_Controller {
public function __construct(){
parent::__construct();
$this->load->model('Facturar_model');
}
//Pagina Muestra Facturas Realizadas
public function index(){
if (!$this->session->userdata('login')):
$this->session->set_flashdata('mensaje','Debes Iniciar Sesion');
redirect(base_url());
else:
// agregar breadcrumbs
$this->breadcrumbs->push('Dashboard', '/');
$this->breadcrumbs->push('Documentos', '/documentos');
$datos['bread']=$this->breadcrumbs->show();// salida
$segmentos_totales=$this->uri->total_segments();
$datos['segmentos']=$segmentos_totales;
$datos['titulo'] = "Documentos Creados";
$datos['documentos'] = $this->Facturar_model->listar_documentos();
$this->load->view('templates/header', $datos);
$this->load->view('factura/documentos');
$this->load->view('templates/footer');
endif;
}
// Pagina de Facturación
public function crear(){
if (!$this->session->userdata('login')):
$this->session->set_flashdata('mensaje','Debes Iniciar Sesion');
redirect(base_url());
else:
// agregar breadcrumbs
$this->breadcrumbs->push('Dashboard', '/');
$this->breadcrumbs->push('Documentos', '/documentos');
$this->breadcrumbs->push('Agregar Factura', '/facturar');
$datos['bread']=$this->breadcrumbs->show();// salida
$segmentos_totales=$this->uri->total_segments();
$datos['segmentos']=$segmentos_totales;
$datos['titulo']= "Crear Documento";
$this->load->view('templates/header',$datos);
$this->load->view('factura/crear_factura');
$this->load->view('templates/footer');
endif;
}
//anular facturas con ajax
public function anular_doc(){
$id=$this->input->post('id');
$estado=$this->input->post('estado');
$this->Facturar_model->actualizar_factura($id,$estado);
}
//comprobador de correlativo
public function comprobar_correlativo(){
//recibimos los valores de serie y correltivo
$serie=$this->security->xss_clean(strip_tags($this->input->post('serie')));
$correlativo=$this->security->xss_clean(strip_tags($this->input->post('correlativo')));
$valor=$serie.$correlativo;
//comprobamos que no se haya registrado otra factura con el mismo numero de correlativo
$this->Facturar_model->consultar_factura($valor);
}
//Pagina invisible, guardara los datos que se envio del formulario
public function guardar_datos_factura(){
// Campos para tabla de Facturacion
// Recibe el Valor de los Campos por post, asignadas a una varibale
$tipodoc=$this->security->xss_clean(strip_tags($this->input->post('tipodoc')));
$serie=$this->security->xss_clean(strip_tags($this->input->post('serie')));
$correlativo=$this->security->xss_clean(strip_tags($this->input->post('correlativo')));
$fecha=$this->security->xss_clean(strip_tags($this->input->post('fecha')));
$moneda=$this->security->xss_clean(strip_tags($this->input->post('moneda')));
$idcliente=$this->security->xss_clean(strip_tags($this->input->post('idcliente')));
$cliente=$this->security->xss_clean(strip_tags($this->input->post('cliente')));
$precio_total=$this->security->xss_clean(strip_tags($this->input->post('total')));
$direccion=$this->security->xss_clean(strip_tags($this->input->post('direccion')));
$ruc=$this->security->xss_clean(strip_tags($this->input->post('ruc')));
$igv=$this->security->xss_clean(strip_tags($this->input->post('igv')));
//Campos para tabla producto
$array=$this->security->xss_clean($this->input->post('group-a'));
// $cantidad=$this->security->xss_clean(strip_tags($this->input->post('cantidad')));
// $precio=$this->security->xss_clean(strip_tags($this->input->post('precio')));
//Codigo unico de Documentos
$codigounico=$serie.$correlativo;
//Comprobamos que los campos necesarios para Factura esten llenos
if( isset($tipodoc) && !empty($tipodoc) && isset($idcliente) && !empty($idcliente) && isset($cliente) && !empty($cliente) && isset($fecha) && !empty($fecha) && isset($moneda) && !empty($moneda)
&& isset($serie) && !empty($serie) && isset($correlativo) && !empty($correlativo) && isset($precio_total) && !empty($precio_total) && isset($igv) ):
//comprobamos que no se haya registrado otra factura con el mismo numero de correlativo
$consulta_serie = $this->Facturar_model->consultar_factura($correlativo);
//Si no hay el correlativo en la base de datos, la registrará
if ($consulta_serie) :
echo "<h2>Ya se ha registrado este numero de correlativo :(</h2>";
else:
$this->Facturar_model->grabar_factura($codigounico, $idcliente, $cliente, $tipodoc, $fecha, $moneda, $serie, $correlativo, $precio_total, $igv);
echo "Listo, la factura se guardo<br>";
$this->Facturar_model->grabar_producto($codigounico,$array);
echo "Se guardo el Producto";
endif;
else:
echo "<h2>No Has mandado Datos<br>";
echo $tipodoc;
echo $serie;
echo $correlativo;
echo $fecha;
echo $moneda;
echo $idcliente;
echo $cliente."<br> precio";
echo $precio_total;
echo $direccion."<br/>";
echo $ruc."<br/>";
echo $igv;
endif;
}
}
en mi caso: mi_ip/CodeIgniter/facturar
me muestra el método index
pero al ingresar a: mi_ip/CodeIgniter/facturar/facturar
Por que me devuelve el método index?? no me deveria devolver un 404??
Que hago mal?
este mi config
Código PHP:
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
$config['base_url'] = 'http://192.168.1.33/CodeIgniter/';
$config['index_page'] = '';
$config['uri_protocol'] = 'AUTO';
$config['url_suffix'] = '';
$config['language'] = 'english';
$config['charset'] = 'UTF-8';
$config['enable_hooks'] = FALSE;
$config['subclass_prefix'] = 'MY_';
$config['permitted_uri_chars'] = 'a-z 0-9~%.:_\-';
$config['allow_get_array'] = TRUE;
$config['enable_query_strings'] = FALSE;
$config['controller_trigger'] = 'c';
$config['function_trigger'] = 'm';
$config['directory_trigger'] = 'd'; // experimental not currently in use
$config['log_threshold'] = 0;
$config['log_path'] = '';
$config['log_date_format'] = 'Y-m-d H:i:s';
$config['cache_path'] = '';
$config['encryption_key'] = 'I74IhPH1XoIothuQcbVNysx69ig4bH00';
$config['sess_cookie_name'] = 'ci_session';
$config['sess_expiration'] = 7200;
$config['sess_expire_on_close'] = FALSE;
$config['sess_encrypt_cookie'] = FALSE;
$config['sess_use_database'] = FALSE;
$config['sess_table_name'] = 'ci_sessions';
$config['sess_match_ip'] = FALSE;
$config['sess_match_useragent'] = TRUE;
$config['sess_time_to_update'] = 300;
$config['cookie_prefix'] = "";
$config['cookie_domain'] = "";
$config['cookie_path'] = "/";
$config['cookie_secure'] = FALSE;
$config['global_xss_filtering'] = FALSE;
$config['csrf_protection'] = FALSE;
$config['csrf_token_name'] = 'csrf_test_name';
$config['csrf_cookie_name'] = 'csrf_cookie_name';
$config['csrf_expire'] = 7200;
$config['compress_output'] = FALSE;
$config['time_reference'] = 'local';
$config['rewrite_short_tags'] = FALSE;
$config['proxy_ips'] = '';