Ver Mensaje Individual
  #1 (permalink)  
Antiguo 30/08/2015, 14:03
Derzz
 
Fecha de Ingreso: enero-2011
Mensajes: 112
Antigüedad: 13 años, 9 meses
Puntos: 4
Problema con URL de Controlador

Hola a todos, espero que me ayuden por favor con el problema de codeigniter.. v2.2.1

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;
    }
}
El problema es que al ingresar por URL

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'] = '';