I am trying to upload file to read in php. But, I unable to transmit a file over to the php.
我正在尝试上传文件来读取php。但是,我无法将文件传输到php。
My code was,
我的代码是
HTML Code:
HTML代码:
<label>Import</label>
<div class="form-group">
<input type="file" ng-file-select="uploadFile($files)" />
</div>
app.js:
app.js:
var app = angular.module('myApp','ngRoute','myApp.bulk','ngSanitize','angularFileUpload']);
bulk.js
bulk.js
var bulkApp = angular.module('myApp.bulk', ['ngResource','ngRoute','ngSanitize']);
bulkApp.factory('FileUploadService', function ($http) {
var api = {
uploadFile: function (file, callback) {
alert(file.name);
$http.uploadFile({
url: 'xxx/services.php?upload=1',
file: file
}).progress(function(event) {
console.log('percent: ' + parseInt(100.0 * event.loaded / event.total));
}).error(function (data, status, headers, config) {
console.error('Error uploading file')
callback(status);
}).then(function(data, status, headers, config) {
callback(null);
});
}
}
return api;
});
bulkApp.controller('bulkController', function($scope,$rootScope,$filter,FileUploadService) {
var service = FileUploadService;
/**
* Handler to upload a new file to the server.
*/
$scope.uploadFile = function ($files) {
var $file = $files[0];
service.uploadFile($file, function (error) {
if (error) {
alert('There was a problem uploading the file.');
}
// handle successfully-uploaded file
})
}
});
services.php
services.php
if(isset($_REQUEST) && isset($_REQUEST['upload']))
{
var_dump($_FILES);
/* read functionality over here */
}
I referred this link
我提到这个链接
i am getting TypeError: $http.uploadFile is not a function error.
我得到了TypeError: $http。uploadFile不是函数错误。
please help. thanks in advance .
请帮助。提前谢谢。
1 个解决方案
#1
2
use $upload service instead of $http:
使用$upload服务代替$http:
bulkApp.factory('FileUploadService', function ($upload) {
var api = {
uploadFile: function (file, callback) {
$upload.upload({
url: 'xxx/services.php?upload=1',
file: file
}).progress(function(event) {
console.log('percent: ' + parseInt(100.0 * event.loaded / event.total));
}).error(function (data, status, headers, config) {
console.error('Error uploading file')
callback(status);
}).then(function(data, status, headers, config) {
callback(null);
});
}
}
return api;
});
#1
2
use $upload service instead of $http:
使用$upload服务代替$http:
bulkApp.factory('FileUploadService', function ($upload) {
var api = {
uploadFile: function (file, callback) {
$upload.upload({
url: 'xxx/services.php?upload=1',
file: file
}).progress(function(event) {
console.log('percent: ' + parseInt(100.0 * event.loaded / event.total));
}).error(function (data, status, headers, config) {
console.error('Error uploading file')
callback(status);
}).then(function(data, status, headers, config) {
callback(null);
});
}
}
return api;
});