2013-11-25 144 views
0

我有一個輸入表單,填寫人員可以選擇他們創建的僱員數量,每個新員工都有一個條目。我遇到的問題是我在提交後嘗試運行一個循環,但是當我測試出可以創建的mots是3(創建表單的人可以從1-10中選擇)。根據用戶輸入創建條目

我有以下代碼:

function dataloop ($entry_id, $form_id) { 

if ($form_id==37) { 
      //$barge=$_POST['item_meta'][734]; 



    $args=array(); 
    $args['1']=$_POST['item_meta'][694]; //submitter_login field 
    $args['2']=$_POST['item_meta'][690]; //submitter_first_name 
    $args['3']=$_POST['item_meta'][691]; // submitter_last_name 
    $args['4']=$_POST['item_meta'][734]; //Dropdown for new hires 



//store the array into a variable 

    $ulog=$args['1'];      
    $ufname=$args['2'];     
    $ulname=$args['3'];     
    $edrop=$args['4'];     


      global $frm_entry, $user_ID; 


      for ($i=1; $i <=$edrop; $i++) { 



    $frm_entry->create(array(
     'form_id'=>'37', 
     'item_key'=>'entry', 
     'frm_user_id'=> $user_ID, 
     'item_meta'=>array(
     694 => $ulog,  
     690 => $ufname, 
      691 => $ulname  

      ),));} }} 

任何幫助,將不勝感激。

回答

0

$edrop變量是string,因此您的for loop循環了字符串(3)中的字符數。

您應該像這樣設置$edrop;

$edrop = intval($args['4']); 
+0

我欣賞的努力,我已經嘗試這樣做,也將其改爲爲($ I = 0; $ I <10; $ I ++),它仍然與剛剛3. – user2911988

+0

返回是否有可能的是,調用$ frm_entry-> create將不會創建重複條目,因爲表單ID不會更改或者什麼? 你是否能夠在該循環中回顯以確認其進行了10次? –

+0

嗯,我不知道這一點,因爲我在工作時一定能創建一個無限循環,並且它正確添加,哈哈。所以,我認爲這個班級能夠創建多個條目。 – user2911988

相關問題