Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/287.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript $\u文件无法与Angular.js$http post一起使用_Javascript_Php_Angularjs - Fatal编程技术网

Javascript $\u文件无法与Angular.js$http post一起使用

Javascript $\u文件无法与Angular.js$http post一起使用,javascript,php,angularjs,Javascript,Php,Angularjs,我有一个问题。我无法使用Angular.js将图像文件存储在本地文件夹中。请检查下面的代码 index.html: *横幅图像 *查看图像 下面的代码是我的控制器文件 var app=angular.module('testImage',['ngFileUpload']); app.controller('imgController',function($scope,$http,$filter){ $scope.submitImage=function(){ var

我有一个问题。我无法使用Angular.js将图像文件存储在本地文件夹中。请检查下面的代码

index.html:


*横幅图像
*查看图像
下面的代码是我的控制器文件

var app=angular.module('testImage',['ngFileUpload']);
app.controller('imgController',function($scope,$http,$filter){
    $scope.submitImage=function(){
        var today = $filter('date')(new Date(),'yyyy-MM-dd HH:mm:ss');
        var newpath=today+"_"+ $scope.file.name;
        var arrFile={'name':newpath,'size':$scope.file.size,'type':$scope.file.type};
        var data={'image':arrFile}
        $http({
            method:'POST',
            url:"upload.php",
            data:data,
            headers: { 'Content-Type': 'application/x-www-form-urlencoded' }
        }).then(function successCallback(response){
            console.log('res',response);
        },function errorCallback(response) {
        });
    }
    $scope.stepsModel = [];
    $scope.uploadFile = function(event){
        console.log('event',event.target.files);
        var files = event.target.files;
        for (var i = 0; i < files.length; i++) {
         var file = files[i];
             var reader = new FileReader();
             reader.onload = $scope.imageIsLoaded; 
             reader.readAsDataURL(file);
     }
    };
    $scope.imageIsLoaded = function(e){
    $scope.$apply(function() {
        $scope.stepsModel.push(e.target.result);
    });
}
});
app.directive('customOnChange', function() {
  return {
    restrict: 'A',
    link: function (scope, element, attrs) {
      var onChangeHandler = scope.$eval(attrs.customOnChange);
      element.bind('change', onChangeHandler);
    }
  };
});
var-app=angular.module('testImage',['ngFileUpload']);
app.controller('imgController',函数($scope,$http,$filter){
$scope.submitImage=function(){
var today=$filter('date')(新日期(),'yyyy-MM-dd HH:MM:ss');
var newpath=today+“”+$scope.file.name;
var arrFile={'name':newpath,'size':$scope.file.size,'type':$scope.file.type};
变量数据={'image':arrFile}
$http({
方法:'POST',
url:“upload.php”,
数据:数据,
标题:{'Content Type':'application/x-www-form-urlencoded'}
}).then(函数成功回调(响应){
console.log('res',响应);
},函数errorCallback(响应){
});
}
$scope.stepsModel=[];
$scope.uploadFile=函数(事件){
console.log('event',event.target.files);
var files=event.target.files;
对于(var i=0;i
在上面的代码中,我为每个图像创建了唯一的名称,我需要在什么时候用相应的唯一名称保存这些图像

upload.php:



通过使用此php代码,我在浏览器控制台中始终收到
未找到图像的消息。请帮助我执行此操作。

看起来您使用的不是有效的enctypeplus,这里有两个不同的文件夹声明
移动上传的文件($file\u tmp,“upload/”$file\u name);echo“上传文件:”。“图像/”$文件名
请您更正,以便它能按照要求工作。如果php文件的
语句,我得到的不能移动到
中。添加一个enctype
看起来您使用的不是有效的enctypeplus,这里有两个不同的文件夹声明
移动上传的文件($file\u tmp,“upload/”$file\u name);         echo“上传文件:”。“图像/”$文件名
能否请您更正此错误,以便它能够按照要求工作。如果php文件的
语句中出现
,则我得到的不能移动到。请添加enctype
var app=angular.module('testImage',['ngFileUpload']);
app.controller('imgController',function($scope,$http,$filter){
    $scope.submitImage=function(){
        var today = $filter('date')(new Date(),'yyyy-MM-dd HH:mm:ss');
        var newpath=today+"_"+ $scope.file.name;
        var arrFile={'name':newpath,'size':$scope.file.size,'type':$scope.file.type};
        var data={'image':arrFile}
        $http({
            method:'POST',
            url:"upload.php",
            data:data,
            headers: { 'Content-Type': 'application/x-www-form-urlencoded' }
        }).then(function successCallback(response){
            console.log('res',response);
        },function errorCallback(response) {
        });
    }
    $scope.stepsModel = [];
    $scope.uploadFile = function(event){
        console.log('event',event.target.files);
        var files = event.target.files;
        for (var i = 0; i < files.length; i++) {
         var file = files[i];
             var reader = new FileReader();
             reader.onload = $scope.imageIsLoaded; 
             reader.readAsDataURL(file);
     }
    };
    $scope.imageIsLoaded = function(e){
    $scope.$apply(function() {
        $scope.stepsModel.push(e.target.result);
    });
}
});
app.directive('customOnChange', function() {
  return {
    restrict: 'A',
    link: function (scope, element, attrs) {
      var onChangeHandler = scope.$eval(attrs.customOnChange);
      element.bind('change', onChangeHandler);
    }
  };
});
<?php
if(isset($_FILES['image'])){    
    $errors= array();        
    $file_name = $_FILES['image']['name'];
    $file_size =$_FILES['image']['size'];
    $file_tmp =$_FILES['image']['tmp_name'];
    $file_type=$_FILES['image']['type'];   
    $file_ext = strtolower(pathinfo($file_name, PATHINFO_EXTENSION));
    $extensions = array("jpeg","jpg","png");        
    if(in_array($file_ext,$extensions )=== false){
         $errors[]="image extension not allowed, please choose a JPEG or PNG file.";
    }
    if($file_size > 2097152){
        $errors[]='File size cannot exceed 2 MB';
    }               
    if(empty($errors)==true){
        move_uploaded_file($file_tmp,"upload/".$file_name);
        echo " uploaded file: " . "images/" . $file_name;
    }else{
        print_r($errors);
    }
}
else{
    $errors= array();
    $errors[]="No image found";
    print_r($errors);
}
?>