پارس جوم ::  انجمن های تخصصی جوملا
درخواست کمک برای افزونه breezingform - نسخه‌ی قابل چاپ

+- پارس جوم :: انجمن های تخصصی جوملا (https://forums.parsjoom.ir)
+-- انجمن: پشتیبانی (/forum-70.html)
+--- انجمن: مباحث و مشکلات عمومی (/forum-33.html)
+--- موضوع: درخواست کمک برای افزونه breezingform (/thread-5260.html)

صفحه‌ها: 1 2


RE: درخواست کمک برای افزونه breezingform - ehsansabet - ۷-۱-۱۳۹۱ ۰۷:۴۱ عصر

(۷-۱-۱۳۹۱ ۰۶:۰۴ عصر)majid33 نوشته شده توسط: دیدن لینک ها برای شما امکان پذیر نیست. لطفا ثبت نام کنید یا وارد حساب خود شوید تا بتوانید لینک ها را ببینید.
آقا دست گلت درد نکنه تونستم از این فرم ساز استفاده کنم

میشه از این فرم ساز بعنوان فرم ثبت نام استفاده کرد؟
منظورم اینه کاربر بعد از پر کردن مشخصات کاملش بتونه تو سایت عضو بشه؟

بله میشه! اینم آموزش استاد ابوالفضل طالبی عزیز در این رابطه :
آموزش ساخت فرم ثبت نام با استفاده از BreezingForms با امکانات اضافی
در این آموزش به شما خواهیم گفت که چگونه بجای استفاده از فرم ثبت نام پیشفرض جوملا از فرم ساز BreezingForm با استفاده از فیلدهای دلخواه فرم ثبت نام بسازید بطوری که کاربر سایت پس از پر کردن فرم در سایت register شود.

ابتدا المنتهای زیر را ایجاد کنید:

المنت متنی با نام name و برچسب نام
المنت متنی با نام email و برچسب ایمیل
المنت متنی با نام bfSubsPassword و برچسب پسورد

پس از ذخیره فرم بر روی نام فرم کلیک کرده و در سربرگ پیشرفته گزینه " تنظیمات بیشتر " کلیک نمایید
در پنجره باز شده گزینه "قطعات ارسال" را انتخاب کنید
در قسمت پایین گزینه "پایان ارسال" را میبینید که از انجا گزینه سفارشی را انتخاب نمایید
در پنجره ظاهر شده کدهای زیر را قرار دهید:
کد:
// Begin create user
global $mainframe;
                JFactory::getLanguage()->load('com_user');
                $this->execPieceByName('ff_InitLib');
$user  = clone(JFactory::getUser());
$pathway  =& $mainframe->getPathway();
$config =& JFactory::getConfig();
$authorize =& JFactory::getACL();
$document   =& JFactory::getDocument();

// If user registration is not allowed, show 403 not authorized.
$usersConfig = &JComponentHelper::getParams( 'com_users' );
if ($usersConfig->get('allowUserRegistration') == '0') {
echo '<script>alert("Access forbidden");history.go(-1);</script>';
return;
} else {

// Initialize new usertype setting
$newUsertype = $usersConfig->get( 'new_usertype' );
if (!$newUsertype) {
$newUsertype = 'Registered';
}

// Bind the post array to the user object
$post = array(
'name' => ff_getSubmit('name'),
'username' => ff_getSubmit('email'),
'email' => ff_getSubmit('email'),
'password' => ff_getSubmit('bfSubsPassword'),
'password2' => ff_getSubmit('bfSubsPassword'),
'task' => 'register_save',
  'id' => '0',
  'gid' => '0',
);

if (!$user->bind( $post, 'usertype' )) {
echo '<script>alert("'.addslashes($user->getError()).'");history.go(-1);</script>';
return;
} else {

// Set some initial user values
$user->set('id', 0);
$user->set('usertype', '');
$user->set('gid', $authorize->get_group_id( '', $newUsertype, 'ARO' ));

$date =& JFactory::getDate();
$user->set('registerDate', $date->toMySQL());

// If user activation is turned on, we need to set the activation information
$useractivation = $usersConfig->get( 'useractivation' );
if ($useractivation == '1')
{
jimport('joomla.user.helper');
$user->set('activation', JUtility::getHash( JUserHelper::genRandomPassword()) );
$user->set('block', '1');
}

// If there was an error with registration, set the message and display form
if ( !$user->save() )
{
echo '<script>alert("'.addslashes(JText::_( $user->getError())).'");history.go(-1);</script>';
return;
} else {

$db =& JFactory::getDBO();

$name  = $user->get('name');
$email  = $user->get('email');
$username  = $user->get('username');

JFactory::getDBO()->setQuery("Update #__facileforms_records Set user_id = '".$user->get('id')."',

username = ".JFactory::getDBO()->Quote($username).", user_full_name = ".JFactory::getDBO()->Quote($name)." Where id = '".$this->record_id."'");
JFactory::getDBO()->query();
}

}

}
// End create user


(۷-۱-۱۳۹۱ ۰۷:۲۵ عصر)mahan نوشته شده توسط: دیدن لینک ها برای شما امکان پذیر نیست. لطفا ثبت نام کنید یا وارد حساب خود شوید تا بتوانید لینک ها را ببینید.
جناب آقای ثابت از بذل توجه شما متشکرم
از نسخه فرم ساز پیشرفته جومینا استفاده کردم
خواهش میکنم عزیز.
من از همینی که در انجمن توسط جناب پردل ترجمه شده استفاده میکنم و همچین مشکلی تابحال برنخوردم. یا نسخه رو عوض کنید و یا با ویرایش فایل های کامپوننت اون رو حذف کنید.


RE: درخواست کمک برای افزونه breezingform - سجاد ابراهیمی - ۸-۱-۱۳۹۱ ۰۶:۱۳ عصر

سلام خدمت همه ی دوستان
اقا یه سوال تو کدوم قسمت باید ایمیل به کامپوننت تعریف بشه که وقتی کاربر فرم رو پر می کنه و بعد ارسال می کنه به دست من برسه
ممنون می شم راهنمایی کنید


RE: درخواست کمک برای افزونه breezingform - ehsansabet - ۸-۱-۱۳۹۱ ۰۶:۳۲ عصر

به صورت کلی در این قسمت :
کامپوننت -> پیکربندی -> آدرس ایمیل اطلاع رسانی پیش فرض

ولی برای هر فرم جداگانه هم میتونی اینکارو انجام بدی :
در هنگام ساخت فرم :
پیشرفته -> تنظیمات بیشتر -> تب تنظیمات -> آگاه سازی توسط ایمیل


RE: درخواست کمک برای افزونه breezingform - سجاد ابراهیمی - ۸-۱-۱۳۹۱ ۰۶:۳۸ عصر

ممنون دوست عزیز
فقط یه چیز دیگه با این کامپوننت می خوام فرم ثبت نام بسازم
با این کد هایی که شما دادید می شه فیلد های بیشتر هم اضافه کرد مثلا
محل زندگی-تلفن تماس--محل سکنت کلا می خوام خیلی فیلد برای ثبت نام بزارم اگه زیاد فیلد بزارم می شه برای ثبت نام استفاده کرد که توی سایت ریجیستر بشه؟


RE: درخواست کمک برای افزونه breezingform - ehsansabet - ۸-۱-۱۳۹۱ ۰۷:۱۱ عصر

تا جائیکه میدونم میتونی هرچقدر فیلد لازم داشتی اضافه کنی.
ولی مهم برای جوملا همون فیلدهای اصلیه که برای ثبت نام استفاده میشه ، ولی شما میتونی با همون اعتبار سنجی کاربر رو مجبور کنی که همه فیلدها رو پر کنه و تا پر نکنه ، ثبت نام نشه.


RE: درخواست کمک برای افزونه breezingform - سجاد ابراهیمی - ۸-۱-۱۳۹۱ ۰۷:۱۹ عصر

پس می شه فیلد زیاد کرد حالا مهم اینه که فیلد هایی که به غیر از اون چند تای مال خود جوملا هست مثل یوزر و پسورد و بقیه،می خوام بدونم اون فیلد های اضافی هم توی کجاییی جوملا اضافه می شه مثل فیلد تلفن تماس که برای ثبت نام گذاشتم


RE: درخواست کمک برای افزونه breezingform - ehsansabet - ۸-۱-۱۳۹۱ ۰۷:۳۴ عصر

اون فیلد ها در دیتابیس ذخیره میشه و شما میتونی با افزونه ای مثل Xform از فرم هایی که ساختی با فرمت های مختلف گزارش بگیری.