Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/272.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 使用angular.js将数据发送到php文件_Javascript_Php_Angularjs_Http - Fatal编程技术网

Javascript 使用angular.js将数据发送到php文件

Javascript 使用angular.js将数据发送到php文件,javascript,php,angularjs,http,Javascript,Php,Angularjs,Http,好的,我有一个angular函数,它使用http方法将数据发送到php文件。我想要处理数据的php代码,并将其回显到页面上,以确认php文件已经处理了它。我现在收到了未定义的警报,我当然应该把电子邮件的价值还给我?。谢谢大家 我正在学习这个教程 我的php代码 //receive data from AJAX request and decode $postdata = file_get_contents("php://input"); $request = json_decode($postd

好的,我有一个angular函数,它使用http方法将数据发送到php文件。我想要处理数据的php代码,并将其回显到页面上,以确认php文件已经处理了它。我现在收到了未定义的警报,我当然应该把电子邮件的价值还给我?。谢谢大家

我正在学习这个教程

我的php代码

//receive data from AJAX request and decode
$postdata = file_get_contents("php://input");
$request = json_decode($postdata);

@$email = $request->email;
@$pass = $request->pass;

echo $email; //this will go back under "data" of angular call.
从:

$http
旧承诺方法
success
error
已被弃用。改用标准的
然后
方法。如果
$httpProvider.useLegacyPromiseExtensions
设置为
false
,则这些方法将抛出
$http/legacy
错误

您的代码应该如下所示:

request.then(
    function( response ) {
        var data = response.data;
        console.log( data );
    },
    function( response ) {
        alert('error');
    }
);
现在,您需要将来自服务器的响应编码为JSON格式,因此替换
echo$email带有:

echo json_encode( array(
    'email' => $email
) );

您还可以通过
response.data.email

从angularjs
$http.success
promise回调函数(这是
中的第一个函数,然后是
闭包)访问
email
属性,谢谢您的帮助:)
echo json_encode( array(
    'email' => $email
) );