加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

Joomla Logic PHP查询有4个参数

发布时间:2020-12-13 22:23:16 所属栏目:PHP教程 来源:网络整理
导读:逻辑查询 你好, 我们有2个逻辑 a)客户最多联系时间:标记对联系客户的次数的限制.我们已将供应商与客户联系的最长时间设置为2.有这个PHP代码 $max = 2;$listing = JRequest::getInt('listing');if($listing) {$db = JFactory::getDBO();$db-setQuery("SELECT
逻辑查询

你好,

我们有2个逻辑

a)客户最多联系时间:标记对联系客户的次数的限制.我们已将供应商与客户联系的最长时间设置为2.有这个PHP代码

$max = 2;
$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><em>Sorry,This customer has already been contacted maximum number of times</em></p>';
}
}

b)供应商可以联系表单中客户的最大次数

$max = 10;
$user = JFactory::getUser();
$db   = JFactory::getDbo();
$query   = $db->getQuery(true);

$query->select('COUNT('.$db->qn('Username').')')
    ->from($db->qn('#__rsform_submissions'))
    ->where($db->qn('FormId').'='.$db->q($formId))
    ->where($db->qn('Username').'='.$db->q($user->get('username')));

$db->setQuery($query);
$counter = $db->loadResult();

if ($counter >= $max){
  $formLayout = '<p style="color:blue;">You have already contacted 10 customers </p>';
}

两者都运作良好 – 现在我们必须设置一个条件: – 如果经销商再次尝试联系同一个客户,他也应该显示错误消息

猜猜它将基于4个参数

Count submission and compare it with Max Parameter as 1

Formid

Listing

Username

尝试这个代码 – 但似乎不尊重

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

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

if ($nrSub >= $max) {
  $formLayout = '<p><strong>Sorry,You have already contacted this customer</strong></p>';
}
}

所以它匹配 – 如果用户名已经联系过一次表单的列表ID – 那么应该显示一条错误消息

可能是需要在代码中添加的用户名参数 – 1

有人可以帮助,帮助和建议实现所需 – 如何设置逻辑查询

解决方法

如果您使用COUNT我认为您也应该应用GROUP BY,例如:

SELECT COUNT('.$db->qn('Username').') FROM #__rsform_submission_values WHERE `FormId`='".(int) $formId."' AND `FieldName`='listing' AND `FieldValue`='".$listing."' GROUP BY '.$db->qn('Username').'"

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读