زمان کنونی: ۳۱-۱-۱۴۰۳, ۰۶:۵۱ عصر درود مهمان گرامی! (ورودثبت نام)


ارسال پاسخ 
 
امتیاز موضوع:
  • 13 رأی - میانگین امتیازات: 3.69
  • 1
  • 2
  • 3
  • 4
  • 5
ويژه رفع مشکلات تخصصی کامپوننت فرم ساز آر اس فرم RSform
۱۲-۵-۱۳۹۳, ۰۴:۳۷ صبح
ارسال: #504
RE: رفع مشکلات تخصصی کامپوننت فرم ساز آر اس فرم RSform
سلام
من یه فرم ثبت نام ساختم که می تونم توی اون محدودیت تکمیل بیش از یکبار توسط کاربر (فقط یکبار) و محدودیت ظرفیت تعداد تکمیل کننده ها (33 نفر) رو تعیین کنم. با قرار دادن این کد ها در قسمت فراخوانی اسکریپت ها هنگام نمایش فرم:

// Define the maximum number of submissions.
$max 1;
 
// Get the current logged in user.
$user JFactory::getUser();
 
// Get a database connection.
$db   JFactory::getDbo();
$query   $db->getQuery(true);
 
// Setup the query.
$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')));
    
// You can also count by User ID, just replace the above with:
    // ->where($db->qn('UserId').'='.$db->q($user->get('id')));
 
$db->setQuery($query);
$counter $db->loadResult();
 
if (
$counter >= $max){
  
$formLayout '<p style="color:red;">شما قبلاً در خصوص تکميل اين فرم اقدام نموده ايد.</p>';
}

global 
$database;
$database JFactory::getDBO();
$database->setQuery("SELECT COUNT(`SubmissionId`) FROM #__rsform_submissions WHERE `formId`='25'");
$database->query();
if (
intval($database->loadResult()) >= 33)
{
echo 
'ظرفيت اين گروه تکميل شده است. لطفا گروه هاي ديگر را بررسي نماييد.';
$formLayout '';


این کد رو هم در بخش نمایش اسکریپت هنگام پردازش فرم قرار دادم تا پس از تکمیل و ارسال فرم، به کاربر اطلاع داده شود که چندمین نفری است که فرم رو تکمیل کرده:

$db JFactory::getDbo();
  
$db->setQuery("SELECT COUNT(`SubmissionId`) FROM #__rsform_submissions WHERE FormId='".(int) $formId."'");
  
$_POST['form']['counter'] = $db->loadResult()+1

همه چیز به خوبی کار می کنه ولی توی این فرم یه لیست کشویی دارم که تعداد 7 گروه درش وجود داره که باید برای هر گروه ظرفیت جداگانه تعریف بشه. مثلا وقتی که ظرفیت گروه اول به 33 نفر رسید دیگه کاربرا نتونن اون گروه رو انتخاب کنن و باید برن سراغ گروه های دیگه. برای هر گروه (هر آیتم از لیست کشویی) ظرفیت 33 تایی تعیین بشه. تصویر فرم با 3 گروه ضمیمه شده.
اگر کسی می تونه لطفا راهنمایی کنه.
ضمناً اصلاً کدنویسی بلد نیستم.


فایل‌(های) پیوست شده بندانگشتی (ها)
   
یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ بازگشت به بالا
ارسال پاسخ 


پیام‌های داخل این موضوع
راه حل جدید - iman iman - ۱۷-۷-۱۳۹۱, ۰۲:۰۱ عصر
سوال - takide - ۱۲-۱۱-۱۳۹۱, ۱۲:۴۸ صبح
کامپوننت فرم ساز آر اس فرم -RSform - amirali - ۱۶-۱۱-۱۳۹۱, ۰۵:۰۸ عصر
آناگ - anag - ۲۵-۱۱-۱۳۹۱, ۰۴:۰۰ صبح
طراحی rsforms فرم به شکل زیر - yavadood - ۳۰-۱-۱۳۹۲, ۰۴:۱۴ صبح
RE: رفع مشکلات تخصصی کامپوننت فرم ساز آر اس فرم RSform - kareez - ۱۲-۵-۱۳۹۳ ۰۴:۳۷ صبح
فیلد اجباری - remo330 - ۲۲-۹-۱۳۹۳, ۱۲:۱۰ صبح
مشکل با پلاگین pdf در rsform - mohsen-73 - ۱۷-۱۰-۱۳۹۳, ۰۶:۱۶ عصر
تعیین ظرفیت - saeedba - ۲-۸-۱۳۹۴, ۱۲:۴۶ صبح
عدم ارسال اطلاعات به بانک - lordofaxe - ۹-۲-۱۳۹۵, ۰۴:۵۱ عصر

پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 11 مهمان