当我在在线主机上时,我的php代码在ajax调用中没有收到任何数据

时间:2015-02-17 21:52:57

标签: javascript php jquery ajax

HTML:

<form  id="myForm" style="display:none" action='picture.php' method="post" enctype="multipart/form-data">
    <input  type="file" name="file" id="file"/><br/> 
    <input  type="submit"  id="submit"/><br/>
</form>

脚本:

$('#templatemo_content_wrapper').on('click', '#change',function(){
    $("#file").trigger('click');
});

$('#file').change(function(){
    $("#submit").trigger('click');
});

$('#myForm').ajaxForm({ 
    beforeSend     : function(){
        $('#change').fadeOut(1);
    },
    UploadProgress : function(){},
    success        : function(){},
    complete       : function(){
        var split = location.search.replace('?', '').split('=')
        var id = split[1];
        $.post('profile_processor.php',{id:id},function(data){
            $('#templatemo_content_wrapper').html(data);
            checked('rel');
            checked('gpa');
            checked('student');
        });
        $('#upload_pic').fadeOut(1);
        $('#change').fadeIn(1);
    }
});

PHP:

if(isset($_FILES['file'])===true){
    if(!empty($name=$_FILES['file']['name'])){
        $allowed=array('jpg','jpeg','gif','png');
        $file_name=$_FILES['file']['name'];
        $file_ext=strtolower(end(explode('.',$file_name)));
        $file_temp=$_FILES['file']['tmp_name'];
        if(in_array($file_ext,$allowed)===true){
            cheange_profile_picture($session_user_id,$file_temp,$file_ext);
            mysql_query("UPDATE `users` SET `img_active`=1 where `id`=$session_user_id");
        }
    }
}

当我将文件上传到 Godaddy主机时,除了其中一个之外,没有一个AJAX调用工作。 AJAX调用不会将数据发送到PHP脚本。为了更清楚,如果我在页面的乞讨中在PHP中添加die();,它根本不会影响代码。但是,如果我在AJAX alert()回调中添加success,则会显示警告。我真的不知道如何提出解决方案。

非常感谢任何帮助。

0 个答案:

没有答案