只要不满足条件,就调用一个函数

时间:2017-05-07 04:30:44

标签: javascript angularjs

让我解释一下我在这里做什么

我一直在尝试在angularjs中构建一个民意调查应用程序并且有一个随机randomPollCode,其中(当然)包含随机字母和数字,我希望它们是unique的标识符我的民意调查将来专门打电话给他们。因此,我想要完成的是检查database randomPollCode生成的database是否已在//checkPollCodeIfAvail checks if the randomPollCode already exists in the db pollCodeStatus = pollFactory.checkPollCodeIfAvail(randomPollCode) .then(function (response) { //if there's no row with the same randomPollCode if (response == "0") { pollCodeAvail = true; proceed(); }else{ //what should I put in here? } console.log(response) }); 中。

以下是代码:

else

我一直试图在factory.checkPollCodeIfAvail = function(x){ code = x; return $http({ method: 'POST', data: { 'action' : 'checkPollCode', 'pollCode' : code }, url: 'http://localhost/poll/api.php', transformRequest:function(obj) { //transform header query into 'myVar1=var1Value&myVar2=var2Value' var str=[]; for(var p in obj){ str.push(encodeURIComponent(p) + "=" + encodeURIComponent(obj[p])) } console.log(str.join("&")); return str.join("&"); }, headers:{'Content-Type':'application/x-www-form-urlencoded'} }).then(function(response){ var i = response.data.message.toString(); console.log(i); return i; }); }; 部分进行do / while循环,但它会无休止地循环并反复调用该函数。

编辑:添加了一些代码

以上代码将在此处调用此方法:

switch ($_POST['action']) {
case 'checkPollCode':
    $sql = "SELECT * FROM polls WHERE pollCode = :pollcode";
    $stmt = $db_con->prepare($sql);
    $stmt->bindParam(":pollcode", $checkPollCode);
    $stmt->execute();
    if($stmt->rowCount() >= 0){
        $count = $stmt->rowCount();
        $arr = array(); 
        $arr['message'] = (string)$count;
        echo json_encode($arr);
    }
    break;
}

以上代码将在此处编写此方法:

pollCode

我从服务器返回数据没有问题。我只是想确保我的数据库中没有重复{{1}}。

感谢任何可以帮助我的人。

0 个答案:

没有答案