Codeigniter& Jquery Ajax,在Localhost上工作但在Server上没有,404错误

时间:2016-09-15 06:10:45

标签: javascript php jquery ajax codeigniter

  

这个花了一整天才弄明白。而且无论多么愚蠢   可能听起来但它就是这样,一个愚蠢的拼写错误,不是   确切地说是一个拼写错误,我拼写了控制器   应用程序>模块>联系>控制器,如应用程序>模块>联系>控制器,查看' C'控制器。 :|

我尝试使用尾随' /'没有' /'我尝试手动提供url到ajax函数,而不是从action的{​​{1}}属性中提取它,但没有任何效果。 我一直在收到错误404 正在进行什么?

  1. alert(jqXHR.responseText); 返回404 html
  2. alert(textStatus); 返回字符串'错误'
  3. alert(errorThrown); 返回字符串'未找到'
  4. 我正在使用wiredesignz HMVC和Controller Contact驻留在应用程序>模块>联系>控制器> Contact.php

      

    有一点需要提及,由于某种原因,我无法访问   http://example.com/Contact如果我尝试在浏览器中通过网址访问它,   我总是在本地主机和在线

    上得到错误404      

    虽然我可以访问网站上的其他控制器/页面

    表单HTML

    <form>

    JAVASCRIPT

    <form id="contact-form" class="form-horizontal subscribe" accept-charset="utf-8" action="<?= base_url ( 'Contact/' ); ?>" method="post">
        <!--Name-->
        <div class="form-group">
            <label class="sr-only" for="name">Name</label>
            <div class="input-group">
                <div class="input-group-addon"><span class="glyphicon glyphicon-user" aria-hidden="true"></span></div>
                <input id="name" type="text" class="form-control validate" name="name" placeholder="Your full name" value="">
            </div>
        </div>
        <!--Email-->
        <div class="form-group">
            <label class="sr-only" for="email">Email</label>
            <div class="input-group">
                <div class="input-group-addon"><span class="glyphicon glyphicon-envelope" aria-hidden="true"></span></div>
                <input id="email" type="text" class="form-control validate" name="email" placeholder="Your email address" value="">
            </div>
        </div>
        <!--Message-->
        <div class="form-group">
            <label class="sr-only" for="message">Message</label>
            <div class="input-group">
                <div class="input-group-addon"><span class="glyphicon glyphicon-envelope" aria-hidden="true"></span></div>
                <textarea id="message" name="message" class="form-control" rows="3" placeholder="Message"></textarea>
            </div>
        </div>
        <!--Submit Button-->
        <div class="form-group text-right">
            <input id="contact_us" type="hidden" name="contact_us" value="Submit" />
    
            <button type="submit" id="contact_us" class="btn btn-warning" name="contact_us" value="Submit">
                Send &nbsp;<span class="glyphicon glyphicon-send" aria-hidden="true"></span>
            </button>
        </div>
    </form>
    

    控制器 http://example.com/Contact

    <script>
    $( '#contact-form' ).submit ( function ( event ) {
    
        event.preventDefault (  );
        event.stopPropagation (  );
    
        var $scriptUrl = $( '#contact-form' ).attr ( 'action' );
    
        var $data = new FormData( $( '#contact-form' ) [ 0 ] );
        $data.append ( 'myUrl', window.location.href );
    
        $.ajax ( {
            method : 'POST',
            url : $scriptUrl,
            data    : $data,
            cache : false,
            processData: false,
            contentType: false,
            dataType : 'json',
            success : function ( data, textStatus, jqXHR ) {
                if ( data.success === true ) { alert ('success'); }
                else { alert ('failure'); }
            },
            error : function ( jqXHR, textStatus, errorThrown ) {
                alert (  jqXHR.responseText  );
            }
        } );
    
    } );
    </script>
    

    的.htaccess

    /*I am testing with print_r($_POST); only for the time being*/
    
    <?php defined('BASEPATH') OR exit('No direct script access allowed');
    
    class Contact extends  MX_Controller {
    
        private $data;
    
        public function __construct (  )
        {
            $this->data['stylesheets'] = [ 'welcome' ];
            $this->data['javascripts'] = [ 'welcome' ];
        }
    
        public function index (  )
        {
            print_r($_POST);
        }
    }
    

0 个答案:

没有答案