如何与$ http.post中的数据回调一起使用? - javascript

我试图让我的应用程序运行到我的if语句中,但是它归结为else语句,这不是我想要的。回调数据为“ Pass”,这对于我的if条件是正确的,但仍然会失败。请看一下我的代码。

js文件

$http.post(path, postdata
                ).success(function (data, status, headers, config) {
                    //if (data) {

                       // $scope.PostDataResponse = data;
                       if (data === "Pass"){

                        setCookie("Username", $scope.formdata.Username);
                        setCookie("cafe_id", $scope.formdata.cafe_id);
                        console.log(getCookie("Username"));

                        alert("ลงทำเบียนสำเร็จ !");   
                        $location.url('/viewSaveCafeDetail');
                        //console.log(data);
                        //alert("สมัครสมาชิกสำเร็จ");


                        //$scope.insertcafe();
                        //$scope.sendEmail();
                        //  $scope.reset();
                        //  $scope.getData();




                        }else{ <--- ran down to else statement
                            alert(data); <--- callback value is "Pass" which is match with my if condition.
                        }

PHP文件

<?php
header("Access-Control-Allow-Origin: *");
    header("Access-Control-Allow-Credentials: true");
    header("Access-Control-Allow-Methods : GET,POST,PUT,DELETE,OPTIONS");
header('Access-Control-Allow-Headers: Origin, Content-Type, Accept, Authorization, X-Requested-With, X-YOUR-CUSTOM-HEADER');
    header("Content-Type : application/json");
        header("Accept : application/json");

$serverName = "localhost";
    $userName = "root";
    $userPassword = "";
    $dbName = "middlework";

    $conn = new mysqli($serverName,$userName,$userPassword,$dbName);
    mysqli_set_charset($conn,"utf8");
    session_unset();
session_start();

  $postdata = file_get_contents("php://input");
$request = json_decode($postdata);
$strSQL = "INSERT INTO users ";
$strSQL .="(Username,Password,Firstname,Lastname,Email,Tel,AccountStat,VerifyCode,Verifystat) ";
$strSQL .="VALUES ";
$strSQL .="('".$request->Username."','".$request->Password."','".$request->Firstname."' ";
$strSQL .=",'".$request->Lastname."','".$request->Email."','".$request->Tel."','User','".session_id()."','None' ) ";



mysqli_query($conn,$strSQL) or die(mysqli_error($conn));

    $insertcafe = "INSERT INTO cafe (cafe_id,Username,CafeName) VALUES ('1' , '".$request->Username."', '".$request->CafeName."')";

require_once('PHPMailer/PHPMailerAutoload.php');
        $mail = new PHPMailer();
$mail->IsHTML(true);
$mail->CharSet = "utf-8";
$mail->IsSMTP();
$mail->SMTPAuth = true; // enable SMTP authentication
$mail->SMTPSecure = "ssl"; // sets the prefix to the servier
$mail->Host = "smtp.gmail.com"; // sets GMAIL as the SMTP server
$mail->Port = 465; // set the SMTP port for the GMAIL server
$mail->Username = "[email protected]"; // GMAIL username
$mail->Password = "1100501068349"; // GMAIL password
$mail->From = "[email protected]"; // "[email protected]";
$mail->FromName = "ThaiCoffeeShopOnline";  // set from Name
$mail->Subject = "ยืนยันการสมัครสมาชิก ThaiCoffeeShopOnline";                            
$mail->Body = "ขอขอบคุณที่สมัครเป็นสมาชิกกับเรา กรุณาคลิก Url ด้านล่างเพื่อทำการ Activate บัญชีของคุณ</br>
               http://localhost/activate.php?sid=".session_id()."&uid=".$request->Username."</br></br> ThaiCoffeeShop.com";




$mail->AddAddress($request->Email); // to Address

if($conn->query($insertcafe))
{
    if (!$mail->send()) {
    //echo "ไม่สามารถส่ง email: " . $mail->ErrorInfo;
    echo "EmailFail";
} else {
    echo "Pass ";
    //json_decode();
}
    //echo "Save Cafe Done.[".$insertcafe."]";

}
else
{
    echo "";
    //echo mysqli_error($conn);
    //echo "ไม่สามาถบันทึกข้อมูล[".$insertcafe."]";
}



$conn->close();
?>

如何与$ http.post中的数据回调一起使用? - javascript

参考方案

您的PHP文件具有echo "Pass ";,其中写有“ Pass”,后跟一个要与字符串“ Pass”进行比较的空格(不带空格)。

此外,PHP文件的末尾可能还会有一个空白行,该行也将包含在输出中。可以通过从最后删除?>标记来解决此问题。

如何使用AngularJS的几个ajax调用($ http)从单个php文件中请求数据? - javascript

我正在尝试使用几个AngularJS的ajax调用来调用单个php文件来相应地获取不同的json数据,以下是我的代码:var myApp = angular.module('myApp', []); myApp.controller('MyController', function($scope, $http) { $…

Telerik单选按钮所需的字段验证器 - javascript

如何设置Telerik单选按钮所需的字段验证器?我想在按钮单击“ BtnSave”上设置必填字段验证器吗?请帮忙!<telerik:RadButton ID="radio_male" runat="server" ToggleType="Radio" AutoPostBack="fa…

选择后显示输入元素 - javascript

我有一个表格,其中取决于用户的选择,输入元素是否可见。实际上,用户正在以另一种形式设置已定义的合作伙伴类型,并且如果选中该元素,则允许在该类型的合作伙伴上可见的元素类型1将显示以下元素:<input type="text" id="partner" name="partner" class=&…

在PHP文件中调用javascript函数并在加载HTML文件之后? - javascript

我需要在我的php中调用js函数,但无法正常工作。有人可以告诉我我在做什么错吗?我该如何轻松地做到这一点?谢谢!我有三个文件:  mail.php负责发送$ _POST的内容(工作正常)。我调用我的javascript函数来切换模式,具体取决于邮件是否已发送。 <? ... $response = $sendgrid->send($email);…

在提交时在表单操作中获取变量丢失 - javascript

            当表单由onchange事件提交时,它不会保留get变量view。任何想法为什么会发生这种情况?提交后,这是它进入的网址,index?month=February&year=2014<form action="index?view=list" class="pure-form pure-fo…