mojtabapordel

سوال: ثبت نام كاربران در گروه خاص

10 پست در این موضوع

ارسال شده در (ویرایش شده)

سلام

تو تنظيمات ثبت نام كاربران، ميشه تعيين كرد كه كاربر جديد عضو كدوم گروه بشه (مثلا Registered) حالا من مي خوام يه فرم ثبت نام اختصاصي داشته باشم (جوملا 2.5). تو ابن فرم كاربر بتونه تعيين كنه كه مي خواد عضو كدوم گروه بشه. من اول تو مديريت دسترسي ها، چندتا گروه ميسازم (g1, g2, g3 كه هركدوم داراي پرميشن هاي خاصي هستن) بعد كاربر تو فرم ثبت نام بتونه تعيين كنه كه مي خواد عضو كدوم گروه باشه، مثلا g1. درنتيجه بعد از ارسال فرم، كاربر بطور اتوماتيك عضو اون گروه خاص بشه.

مثلا تو سايت يك استاد دانشگاه، دانشجويان بتونن انتخاب كنن كه دانشوي ليسانس هستن، يا فوق ليسانس يا دكترا. بعد بطور اتوماتيك تو گروه هاي خودشون ثبت نام بشن و به منابع خاص خودشون در سايت دسترسي پيدا كنن.

اگه با BreezinForms چنين فرم ثبت نامي را بسازيم، مسئله اينجاست كه كاربر بعد از ارسال فرم تو سايت ثبت نام بشه و تو گروه مدنظرش قرار بگيره. يعني اتصال فرمي كه ساختيم به ثبت نام جوملا و قرارگيري كاربر در گروه هاي مختلف بطور اتوماتيك.

اگر هم بشه فرم ثبت نام خود جوملا رو طوري تغيير داد كه چنين چيزي امكان پذير بشه، خيلي عاليه

منتظر نظر اساتيد هستم

ویرایش شده در توسط mojtabapordel

Share this post


Link to post
Share on other sites
آموزش ووکامرس قالب جوملا قالب وردپرس قالب رایگان وردپرس قالب رایگان جوملا هاست نامحدود هاست جوملا هاست لاراول هاست وردپرس هاست ارزان هاست ربات تلگرام خرید دامنه آموزش ساخت ربات تلگرام با php آموزش لاراول آموزش cPanel آموزش php آموزش فرم ساز RSform آموزش ساخت ربات جذب ممبر آموزش ساخت ربات دوستیابی آموزش ساخت ربات فروشگاهی برای ووکامرس آموزش طراحی سایت داینامیک با php آموزش بخش پشتیبانی با rsticket

مهندس پیرو صحبت شما فکر میکنم تغییرات در فرم ثبت نام جوملا داده بشه بهتر است ..

خیلی پیچیده نیست فقط کافیه که در فرم ثبت نام یه کوئری اجرا کنیم و گروه های کاربری رو لیست کنیم که کابر انتخاب کنه و شناسه همون گروه در فیلد مربوطه به کاربر ذخیره بشه

اگر فرصتی شد یه نمونه پیاده میکنم یا یه آموزش براش تهیه میکنم i dont know :13:

Share this post


Link to post
Share on other sites

مرسي مهندس جان

اگه آموزشش رو بذاري (يا منبع خارجي معرفي كني كه خودم مطالعه كنم) خيلي لطف مي كني. كارم گيره. خودم گشتم آموزشي پيدا نكردم.

باز هم ممنون

Share this post


Link to post
Share on other sites
دوست عزیز چرا از rsform pro استفاده نمیکنید؟؟؟؟ این کار به سادگی قابل انجامه:13:

سلام

ميشه بفرماييد چطوري؟ من با rsform pro كار نكردم.

Share this post


Link to post
Share on other sites
سلام

ميشه بفرماييد چطوري؟ من با rsform pro كار نكردم.

سلام،

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

Share this post


Link to post
Share on other sites
سلام،

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

سلام

اگه تو ثبت نام جوملا بشه اين امكان رو پياده كرد كه خيلي عاليه.

Share this post


Link to post
Share on other sites

دوست عزیز، یه راهی پیدا کردم . چون تست نکردم فقط به عنوان یه ایده یا راهنمایی میذارم همین جا. اگه نهایی بود انتقال میدیم به تاپیک مخصوص آموزش rsform pro

برای اتصال فرم به دیتابیس و جدول users، یه قطعه کد هست که باید در manage forms، فرم مورد نظرتون رو باز کنید و در تب Scripts در قسمت Scripts called on form process کپی کنید.

if (isset($_POST['form']['username'])) 
{ 
   $database =& JFactory::getDBO(); 
   $fullname = $_POST['form']['fullname']; 
   $email = $_POST['form']['email']; 
   $username = $_POST['form']['username']; 
   $password = $_POST['form']['password']; 
   $database->setQuery("SELECT `id` FROM #__users WHERE `username`='".$username."'"); 
   $database->query(); 
   if ($database->getNumRows() > 0) die('This username is already taken. Please press back and try a different username.'); 
   $database->setQuery("INSERT INTO #__users (`name`, `username`, `email`, `password`, `usertype`, `block`, `sendEmail`, `gid`, `registerDate`, `lastvisitDate`, `activation`, `params`) VALUES('".$fullname."', '".$username."', '".$email."', '".md5($password)."', '', 0, 0, 18, now(), now(), '', '')"); 
   $database->query(); 
   $userid = $database->insertid(); 
   $database->setQuery("INSERT INTO #__core_acl_aro (`id`, `section_value`, `value`, `order_value`, `name`, `hidden`) VALUES ('', 'users', '".$userid."', 0, '".$fullname."', 0)"); 
   $database->query(); 
   $aro_id = $database->insertid(); 
   $database->setQuery("INSERT INTO #__core_acl_groups_aro_map (`group_id`,`section_value`,`aro_id`) VALUES ('18','','".$aro_id."')"); 
   $database->query(); 
}

البته این یه مشکل داره اگه کاربری، نام کاربری ش رو گذاشته باشه delete ، یه راه نفوذ به سایت باز میشه!!!

username = '; DELETE * from `jos_users`

این فقط در حکم یه نمونه س که نام کاربری و اطلاعات جدول users رو میگیره. من نمیدونم user groups جدول جداگانه ای تو 2.5 داره یا خیر. امیدوارم که این پست بدردتون بخوره

Share this post


Link to post
Share on other sites

برای ارسال نظر یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید نظر ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در انجمن ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری