duandaiqin6080 2016-11-10 17:30
浏览 58
已采纳

如何使用来自$ http.post的数据回调?

I'm trying to get my app run into my if statement but it went down to else statement which is not what I want. callback data is "Pass" which is correct for my if condition but it still ran down to else. Please take a look at my code.

js file

$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 file

<?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 = "kitsakorn.p55@rsu.ac.th"; // GMAIL username
$mail->Password = "1100501068349"; // GMAIL password
$mail->From = "kitsakorn.p55@rsu.ac.th"; // "name@yourdomain.com";
$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();
?>

value is Pass

  • 写回答

1条回答 默认 最新

  • donglou1866 2016-11-10 17:46
    关注

    Your PHP file has echo "Pass "; which writes "Pass" followed by a space which you are comparing against the string "Pass" without a space.

    In addition, you might also have a blank line at the end of your PHP file which will also be included in the output. This can be worked around by removing the ?> tag from the end.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 sqlite 附加(attach database)加密数据库时,返回26是什么原因呢?
  • ¥88 找成都本地经验丰富懂小程序开发的技术大咖
  • ¥15 如何处理复杂数据表格的除法运算
  • ¥15 如何用stc8h1k08的片子做485数据透传的功能?(关键词-串口)
  • ¥15 有兄弟姐妹会用word插图功能制作类似citespace的图片吗?
  • ¥200 uniapp长期运行卡死问题解决
  • ¥15 latex怎么处理论文引理引用参考文献
  • ¥15 请教:如何用postman调用本地虚拟机区块链接上的合约?
  • ¥15 为什么使用javacv转封装rtsp为rtmp时出现如下问题:[h264 @ 000000004faf7500]no frame?
  • ¥15 乘性高斯噪声在深度学习网络中的应用