如何将文件添加到ajax?

时间:2014-06-13 10:44:37

标签: php jquery ajax file upload

我在谷歌上搜索过但没有成功。

我需要使用ajax传递一个xml文件。

这是我的HTML代码:

<script type="text/javascript" src="/js/jquery/jquery-1.11.0.min.js"></script>    
<script type="text/javascript" src="js.js"></script>    
<input type="text" id="id" value="" /><br>
<input type="text" id="nombre" value="" /><br>
<input type="file" size="60" id="fichero" name="myfile" accept="application/vnd.ms-excel">
<input type="button" href="javascript:;" onclick="realizaProceso();return false;" value="GO"/>

我的js.js文件:

function realizaProceso(){
        var parametros = {
                "clave" : $('#clave').val(),

                "id" : $('#id').val(),
                "nombre" : $('#nombre').val(),

                "myfile" : $('#fichero')[0]     

        };

        $.ajax({
                data:  parametros,
                url:   'upload.php',
                type:  'post',
                beforeSend: function () {
                        $("#resultado").html("Procesando, espere por favor...");
                },
                success:  function (response) {
                        $("#resultado").html(response);

                }

        });
}

upload.php的

<?php

    echo $_POST['id'];
    echo $_POST['nombre'];


    $output_dir = "subidas/";
    $fechavariable = date("siH-dmY-");

    if(isset($_FILES["myfile"]))
    {
        //Filter the file types , if you want.
        if ($_FILES["myfile"]["error"] > 0)
        {
          echo "Error: " . $_FILES["file"]["error"] . "<br>";
        }
        else
        {   

            //move the uploaded file to uploads folder;
            move_uploaded_file($_FILES["myfile"]["tmp_name"],$output_dir. $_FILES["myfile"]["name"]);

            $nombre = $output_dir.$fechavariable.$_FILES["myfile"]["name"];
            rename( $output_dir. $_FILES["myfile"]["name"], $nombre);

         echo "All ok";
        }

    }

?>

0 个答案:

没有答案