我必须承认我有点困惑…我以前从未做过,而且我显然缺少一些东西
当我通过http.post将数据传递到我的php文件时,我似乎无法收集数据…
有人可以告诉我为什么这行不通吗?
FormData会显示在控制台日志中,并且可以确定正在写入文件。但是,看起来好像没有数据传递。
$scope.submitForm = function() {
formData = $scope.form;
$http.post('form2.php', JSON.stringify(formData)).success(function(){
console.log(formData);
//window.location.href = "form2.php?data=" + JSON.stringify(formData);
});
};
这是在我的php文件中。试图将提交表单中的数据写入文件中(只是测试)。
<?php
$file = 'form2.txt';
$data = json_decode($_REQUEST['data'],true);
//print( '<pre>' );
//print_r ($data);
//print( '</pre>' );
$data_insert = "Name: " . $data['firstname'] .
", Email: " . $data['emailaddress'] .
", Description: " . $data['textareacontent'] .
", Gender: " . $data['gender'] .
", Is Member: " . $data['member'];
//print $data_insert;
file_put_contents($file, $data_insert, FILE_APPEND | LOCK_EX);
?>
经过大量研究后,我发现这有点像php特有的问题..我在这两篇文章中找到了Answersa。
此处:http :
//sebgoo.blogspot.ca/2013/05/angularjs-post-data-to-
php.html
我最终的PHP代码如下所示。
$file = 'form2.txt';
$postdata = file_get_contents("php://input");
$data = json_decode($postdata, true);
$data_insert = "Name: " . $data['firstname'] .
", Email: " . $data['emailaddress'] .
", Description: " . $data['textareacontent'] .
", Gender: " . $data['gender'] .
", Is a member: " . $data['member'];
//print $data_insert;
file_put_contents($file, $data_insert, FILE_APPEND | LOCK_EX);
我还要感谢Mike Brant,其引用的堆栈帖子中的解决方案非常有帮助。.我也投票赞成他的回答。
我的有角度的应用程序代码看起来像这样…由于arturgrzesiak,它与原始代码相比有了很大的改进。
var app = angular.module('myApp', []);
app.controller('FormCtrl', function ($scope, $http) {
var formData = {
firstname: "default",
emailaddress: "default",
textareacontent: "default",
gender: "default",
member: false
};
$scope.submitForm = function() {
$http({
url: "form2.php",
data: $scope.form,
method: 'POST',
headers : {'Content-Type':'application/x-www-form-urlencoded; charset=UTF-8'}
}).success(function(data){
console.log("OK", data)
}).error(function(err){"ERR", console.log(err)})
};
});
最后,用于提交此表单的HTML表单如下所示:
<div ng-app="myApp">
<form ng-controller="FormCtrl" ng-submit="submitForm()">
First name: <br/><input type="text" ng-model="form.firstname"> <br/><br/>
Email Address: <br/><input type="text" ng-model="form.emailaddress"> <br/><br/>
Description:<br/> <textarea rows="3" cols="25" ng-model="form.textareacontent"></textarea>
<br/>
<input type="radio" ng-model="form.gender" value="female" />Female ...
<input type="radio" ng-model="form.gender" value="male" />Male <br/>
<br/>
<input type="checkbox" ng-model="form.member" />Already a member
<br/>
<input type="submit" ngClick="Submit" >
</form>
</div>
感谢所有提供帮助的人!
问题内容: 我在python中有以下要求 发送文件,并将表单字段发送到后端。如何使用Angular $ http进行相同操作(发送文件+表单字段)。目前,我确实喜欢这样,但也不确定如何发送文件。 问题答案: 我最近写了一条指令,支持本地多个文件上传。我创建的解决方案依赖于服务来填补$ http服务所标识的空白。我还包含了一条指令,该指令为您的angular模块提供了一个易于使用的API,用于发布文
问题内容: 这是javascript: 这是PHP: 这里的问题是价值。当console.log()用于返回值时,为什么$ _POST [‘email’]为null 。有人可以帮忙吗?我认为这个问题在后面。(不确定) 请不要jQuery 。我知道如何在jQuery中执行此操作,但我想学习如何在javascript中执行此操作。是的,谢谢 问题答案: 你的问题是,与请求为发送不。删除设置内容类型的行
我正在尝试使用axios发送数据,但它发送的响应超出预期。当我使用postman发出相同请求时,它会成功地向我的手机发送通知,以下是postman的响应: 但是使用axios,通知不会发送到我的手机,以下是axios的响应: 这是我的axios代码:
试图将$http.post请求从AngularJS表单发送到Symfony控制器以将表单内容添加到数据库。我可以在AngularJS侧获得"状态"200的成功响应。 但是,在Symfony控制器上,$request- 另外,安装了FOSRestBundle并启用了body listener、param fetcher listener。 我知道我的问题与AngularJS对Symfony控制器的P
问题内容: 我的页面上有一个表单,其中包含大量输入和一些隐藏字段,有人要求我将数据通过“后置数组”传递,只是不确定如何执行此操作, 这是我目前正在做什么的摘要 在我的process.php im中,然后这样调用数据… 有没有办法将其发布为数组?无论如何,我的方法是不好的做法吗? 问题答案: 给每个输入一个数组格式的名称: 然后在PHP 中将是一个数组:
我想将以下(工作的)curl片段转换为RestTemplate调用: 如何正确传递email参数?以下代码将导致404 Not Found响应: 我尝试在PostMan中制定正确的调用,通过在正文中将email参数指定为“form-data”参数,可以使其正常工作。在RESTTemplate中实现此功能的正确方法是什么?