2015-07-12 67 views
1

我想创建一个条件,其中mysql数据库的基础如何从的Joomla获取超值2.5数据库列,字段名称和值

列名 字段名称 字段值

,条件脚本应显示在 - 附表 enter image description here

ColumnName - FormId Fieldname - Listing fieldValue方法 - 上市值

下面是脚本

$max = 1; 
$listing = JRequest::getInt('listing'); 

if($listing) { 
$db = JFactory::getDBO(); 
$db->setQuery("SELECT COUNT(`SubmissionId`) FROM #__rsform_submission_values WHERE `FormId`='".(int) $formId."' AND `FieldName`='listing' AND `FieldValue`='".$listing."' "); 
$nrSub = $db->loadResult(); 

if ($nrSub >= $max) { 
    $formLayout = '<p>Sorry, no more submissions are accepted for this car.</p>'; 
} 
} 

我觉得我与fieldValue方法柱搞乱 - 可能是它可能无法在价值获取。有人可以提供帮助和建议请

+0

您quering计数'COUNT('SubmissionId')',Y如果需要值,则必须使用列名称 –

回答

1

你Quering计数,它应该是列名或*所有列,如果你需要的值,见下面的例子:

$db->setQuery("SELECT * FROM #__rsform_submission_values WHERE `FormId`='".(int) $formId."' AND `FieldName`='listing' AND `FieldValue`='".$listing."' "); 
$nrSub = $db->loadAssocList(); 
print_r($nrSub); 

此外,请与裁判经过Joomla DB Documentation

编辑:

$Query = "SELECT 
    COUNT(`SubmissionId`) SubmissionCount, `FormId`, `FieldName`, `FieldValue` 
    FROM #__rsform_submission_values 
    WHERE `FormId`='".(int) $formId."' AND `FieldName`='listing' AND `FieldValue`='".$listing."' 
    GROUP BY `FormId`, `FieldName`, `FieldValue`"; 
$db->setQuery($Query); 
$nrSub = $db->loadAssocList(); 
print_r($nrSub); 
+0

Hello - Yes计数将用于根据匹配参数(表单ID,字段名称,字段值)查找总提交数,并将其与查询中定义的最大值1进行比较。 – Ruchika

+0

@Ruchika请添加,期望的结果 –

+0

你好,Count应该发生在表格基础匹配 - '表格ID'和'列表字段'和'列表字段值'。如果试图提交重复计数,则应显示一条消息 - 对不起,此车不再接受任何提交。 – Ruchika

相关问题