如果用户已存在则禁用按钮

时间:2016-11-27 10:16:46

标签: php mysql

我在shortlist.php文件中有一个按钮,我通过Ajax向MySQL shortlisted表提交特定用户的新数据。

        <button type="button" id="applybutton" class="btn btn-primary" >
            <div class="hidden-xs" id="result">Shortlist</div>
        </button>

它工作得很棒,但我想带来改变。赞:在页面shortlist.php页面加载我想检查ApplicantIdshortlisted MySQL表中是否存在相同的UserId。如果存在,那么此按钮应该禁用,并且按钮中的Shortlist单词应该更改为入围单词,如果不存在,那么它应该是原样。

额外详情:

  • 数据库连接名称:$ conn
  • 数据库名称:job

提前致谢。

2 个答案:

答案 0 :(得分:0)

当您发送ajax呼叫时,单击该按钮后,您可以使用以下命令禁用按钮。

$(this).attr("disabled","disabled");

要在刷新/加载页面时首先禁用按钮,您可以稍微更改您的查询。使用当前查询左加入入围的表格。然后,如果从连接表中获得任何值,则禁用该按钮。

左连接查询

SELECT profiles.*, shortlisted.ApplicantId FROM profiles LEFT JOIN shortlisted ON profiles.UserId=shortlisted.ApplicantId WHERE profiles.UserId = '$reserver'

并将按钮更改为以下

<button type="button" id="applybutton" class="btn btn-primary" <?=($row['ApplicantId'])?" disabled='disabled':''?> >

希望这会有所帮助

答案 1 :(得分:0)

PHP部分:

  1. 使用 PHP 检查用户是否在表格中有条目。
      

    如果他确实回显了按钮内的已禁用属性。并提供一些信息,为什么它被禁用

  2. 如果他没有条目,则不会禁用该按钮,用户可以提交表单。
      

    提交后,您验证请求(检查他是否真正在表格中没有条目,因为他可以轻松删除html中的禁用)。

  3. Js part:

    在发送ajax请求之前提交禁用按钮。然后使用以下逻辑提交请求。

    $('button').click(function(){
      $('p.sub_info').text("Form submitting...");
      $('#sub_button').attr("disabled", true);
    
      $.ajax({
        url: "shortlist.php", 
        success: function(result){
          if(result === true){ // Everything is ok
            $('p.sub_info').text("You're now on the list.");
            $('#sub_button').attr("disabled", true);
          }
          else{ // He did not pass validation
            $('p.sub_info').text("It seems we already have you on the list.");
            $('#sub_button').attr("disabled", true);
          }          
        },
        error: function(result){
          $('p.sub_info').text("Something went wrong.");
          $('#sub_button').attr("disabled", false);
        }
      });
    });