PHP - 多个粘性复选框

时间:2014-01-07 14:37:54

标签: php jquery webforms

需要从数据库中读取不同的作业(例如,job1,job2,job3,... job n)并将它们放在表单上,​​供用户通过复选框选择用户喜欢的作业。下面。

  • ()工作1 description1,
  • (X)Job 2 description2
  • (X)Job 3 description3
  • ()职位N descriptionN

鉴于单个页面的作业数量可能太高,因此使用分页以便将整个表单分成多个页面。要求是,即使用户浏览此表单的不同页面,给定页面上的用户检查框选择也必须是粘性的。如何实现这一目标。

如果JQuery可用于简化任务,请同时告诉我。

我使用以下代码:

 function selected($job_id)
 {          
    if (empty($_POST['job_selection'])) || (!is_array($_POST['job_selection'])) ||       (!in_array($job, $_POST['job_selection'])) {
      return '1';
    }

    return 'checked';
  }    


     $q10 = "SELECT ...
 $r10 = mysqli_query ($dbc, $q10);                                    
     if (mysqli_num_rows($r10) > 0) {

      while ($row10 = mysqli_fetch_array($r10, MYSQLI_ASSOC)) 
      {

       if (isset($_POST['job_selection'])){   
        $jid = $row10['job_id'];
            echo '<td align="left"><p class="normal_text"><input type="checkbox" name="job_selection[]" value="' . $row10['job_id'] . '" selected($jid) />' . $row10['job_name'] . '</p></td>';      
        } 
        else 
        {             
           echo '<td align="left"><p class="normal_text"><input type="checkbox" name="job_selection[]" value="' . $row10['job_id'] . '" />' . $row10['job_name'] . '</p></td>';               
        }
     } 
   }

问题是,当通过点击页码浏览页面时,表单不一定是已提交 - 因此,$ _POST [&#39; job_selection&#39;]将为空。

1 个答案:

答案 0 :(得分:0)

您可以使用客户端分页列表。

有很多简单的jQuery插件可以实现它:http://www.smashingapps.com/2013/05/06/16-beautiful-jquery-pagination-plugins.html