2011-09-09 13 views
0
$record_values = new Criteria(); 
$record_values->add(TblfieldsPeer::CUSTOMER_ID, $company_qu_id); 
$record_values->add(TblfieldsPeer::RECORD_TYPE_ID, $query_rtype); 
for($fieldid_arrayCount=0;$fieldid_arrayCount<count($fieldIds);$fieldid_arrayCount++) 
{ 
$currentFieldId = $fieldIds[$fieldid_arrayCount]; 
if(isset($query_values[$fieldid_arrayCount])) 
{ 
$criterion1 = $record_values->getNewCriterion(TblfieldsPeer::FIELDS_ID, $currentFieldId); 
$criterion1->addAnd($record_values->getNewCriterion(TblfieldsPeer::FIELD_VALUES, $query_values[$fieldid_arrayCount])); 
$record_values->add($criterion1); 
} 
} 
$record_values_results = TblfieldsPeer::doSelect($record_values, $con1); 

但是隻有加入最後一個標準。我檢查調試工具欄數據庫只有最後一個標準是存在的。可能是什麼問題呢。 請幫我....Symfony的內部推動標準的for循環

回答

1

我不是一個推進專家,但也許你可以嘗試使用2點替代的變化:

  • 使用addAnd語句而不是add之一$record_values->add($criterion1)
  • 到把外面的$record_values->add($criterion1)(當然之後)週期在一個領域外的週期變化$criterion1和只使用$criterion1
addAnd聲明