0
私はファイルアップロードプロセスの一部を稼働させましたが、私が理解できない部分はバックエンドでdbに保存することです。角を使ってファイルをアップロードするためのPHPバックエンド
そう...
<input type="file" name="file" id="thefile" multiple ng-files="getTheFiles($files)"/>
<input name="submit" type="submit" ng-click="uploadFiles()" value="Submit">
そして、ここでは、コントローラ私のhtmlです...
app.controller('import', function($scope, $http) {
var formdata = new FormData();
$scope.getTheFiles = function ($files) {
angular.forEach($files, function (value, key) {
formdata.append(key, value);
});
};
$scope.uploadFiles = function() {
var request = {
method: 'POST',
url: '../submit.php',
data: formdata,
headers: {
'Content-Type': undefined
}
};
// SEND THE FILES.
$http(request)
.success(function (d) {
alert(d);
})
.error(function() {
});
}
});
私はオブジェクトを取得console.log(formdata)
とき、これは、動作しているようです。しかし今、私はそれをDBとサーバーに保存する必要があります。私が試しただけのPHPコードは、1つのファイルを保存します通常の方法だった...
if(isset($_FILES['file'])) {
$file = rand(1000,100000)."-".$_FILES['file']['name'];
$file_loc = $_FILES['file']['tmp_name'];
$file_size = $_FILES['file']['size'];
$file_type = $_FILES['file']['type'];
$folder="uploads/";
move_uploaded_file($file_loc,$folder.$file);
$sql="INSERT INTO tbl_uploads(file,type,size) VALUES(?,?,?)";
$statement = $conn->prepare($sql);
$statement->execute(array($file,$file_type,$file_size));
しかし、これは何もしません。また、私の角のプリントがsuccess
だから私はそれをデバッグするのが難しいと思っていますが、私はそれにHTTPリクエストをしているので、サーバ側ではecho
できません。