运行html时执行php文件

时间:2016-08-04 07:13:52

标签: php html

我在这里遇到了一些问题:

  

我有 index.html ,其中包含上传文件功能

     

我有 cleaning.php ,它会清理文件中的每个字符串

所以,我想要的是如果我运行index.html然后上传一个文件,那时它将执行cleaning.php并将clean文件返回给index.html 我怎样才能做到这一点? 需要你的帮助:(

这是我的index.html文件:

 <script>
 $(function testing (data) {

    $("#upload").bind("click", function () {
       // I want to pass this array to cleaning.php
       $someArray[] = "stringFromCSVFile"; // must pass to cleaning.php
  });
 </script>

这是我的cleaning.php文件:

$array = csvToArray("filecsv.csv"); //convert uploaded file to array
callFuncA($array);

functionA($array){
   return $something;
}

2 个答案:

答案 0 :(得分:0)

您可以尝试以这种方式使用ajax post文件,您可以根据需要对cleaning.php进行更改并将响应返回到index.html。

index.html 档案

<form id="data" method="post" enctype="multipart/form-data">
    <input type="file" />
    <button type="submit">Submit</button>
    <div id="response"></div>
</form>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.1/jquery.min.js"></script>
<script>
var files;
$('input[type=file]').on('change', prepareUpload);
function prepareUpload(event){
  files = event.target.files;
}
$('form').on('submit', uploadFiles);
function uploadFiles(event){
    event.stopPropagation(); 
    event.preventDefault();
    var data = new FormData();
    $.each(files, function(key, value){
        data.append(key, value);
    });
    $.ajax({
        url: 'cleaning.php',
        type: 'POST',
        data: data,
        cache: false,
        dataType: 'json',
        processData: false,
        contentType: false,
        success: function(data, textStatus, jqXHR){
            //Successfuly Uploaded
            $('#response').html(JSON.stringify(data));
        },
        error: function(jqXHR, textStatus, errorThrown){
            $('#response').html('ERRORS: ' + textStatus);
        }
    });
}
</script>

cleaning.php 档案

<?php
echo json_encode($_FILES);
?>

答案 1 :(得分:-1)

这是不可能的,ajax无法读取上传文件的内容。

您应该在index.html中放置一个上传表单并将其提交给cleaning.php,它在PHP中进行清理并返回结果。