joomstar

آموزش طراحی و ساخت ماژول برای جوملا قسمت دوم

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

در این آموزش قصد داریم کار با پایگاه داده ها را در ماژول نویسی آموزش دهیم

منبع : جوم استار - آموزش طراحی و ساخت ماژول - قسمت دوم

به جز فایل هایی که در قسمت اول معرفی شد دو فایل install.sql و unistall.sql نیز به فایل هایمان اضافه می شوند

توضیح فایل install.sql :


CREATE TABLE IF NOT EXISTS `#__hellojoomstar` ( `id` int(10) NOT NULL AUTO_INCREMENT, `hello` text NOT NULL, `lang` varchar(25) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1;
INSERT INTO `#__hellojoomstar` (`hello`, `lang`) VALUES ('Hello joomstar', 'en-GB');
INSERT INTO `#__hellojoomstar` (`hello`, `lang`) VALUES ('Hola joomstar', 'es-ES');
INSERT INTO `#__hellojoomstar` (`hello`, `lang`) VALUES ('سلام جوم استار', 'fa-IR');

هنگام نصب, کوئری های نوشته شده در این فایل اجرا شده و جدول مورد نظرمان را ایجاد میکند. دقت کنید که جداول در جوملا دارای پیشوند هستند و این پیشوند هنگام نصب جوملا ایجاد می شود, از آنجا که توسعه دهنده از پیشوند جداول جوملایی که قرار است افزونه روی آن نصب شود اطلاعی ندارد از #_ استفاده میکند. جوملا به صورت خود کار این عبارت را به پیشوند تبدیل می کند

توضیح فایل unistall.sql

DROP TABLE IF EXISTS #__hellojoomstar

کوئری های نوشته شده در این فایل هنگام حذف ماژول اجرا می شوند

همچنین لازم است که این دو فایل در فایل xml ماژول تعریف شوند. لذا موارد زیر را به فایل xml اضافه می کنیم


<install><sql><file driver="mysql" charset="utf8">install.sql</file></sql></install>
<uninstall><sql><file driver="mysql" charset="utf8">uninstall.sql</file></sql></uninstall>

در قسمت قبل فایل helper.php تنها یک عبارت ساده چاپ می کرد, در این قسمت می خواهیم آن عبارت را از پایگاه داده بخواند و چاپ کند, لذا این فایل را به شکل زیر باز نویسی می کنیم


$db = JFactory::getDbo();
$query = $db->getQuery(true)->select($db->quoteName('hello'))->from($db->quoteName('#__hellojoomstar'))->where('lang = '. $db->Quote('en-GB'));
//Prepare the query
$db->setQuery($query);
// Load the row.
$result = $db->loadResult();
//Return the Hello return $result;
return $result;

از JFactory::getDbo() برای اتصال به پایگاه داده استفاده میکنیم. این تابع از توابع داخلی جوملاست

متغییر $query را به دوصورت میتوان تعریف کرد. یکی مانند بالا و بر اساس الگوی جوملا و دیگری یک متغییر رشته ای شامل کوئری, همانند آنچه در php تعریف می شود

از $db->setQuery برای اجرای کوئری استفاده میکنیم و در نهایت $db->LoadResult نتیجه ی پرس و جو را بر میگرداند

Share this post


Link to post
Share on other sites
آموزش ووکامرس قالب جوملا قالب وردپرس قالب رایگان وردپرس قالب رایگان جوملا هاست نامحدود هاست جوملا هاست لاراول هاست وردپرس هاست ارزان هاست ربات تلگرام خرید دامنه آموزش ساخت ربات تلگرام با php آموزش html و css آموزش لاراول آموزش cPanel آموزش php آموزش سئو وردپرس آموزش امنیت وردپرس آموزش وردپرس آموزش فرم ساز RSform آموزش سئو جوملا آموزش فروشگاه ساز Hikashop آموزش فروشگاه ساز ویرچومارت آموزش طراحی سایت آگهی تبلیغاتی آموزش امنیت جوملا آموزش طراحی سایت فروش فایل آموزش طراحی قالب ریسپانسیو با Helix آموزش جوملا 3 آموزش ساخت ربات دکمه ی شیشه ای آموزش ساخت ربات همکاری در فروش آموزش ساخت ربات جذب ممبر آموزش ساخت ربات ضد اسپم آموزش ساخت ربات پیوست فایل سورس ربات مدیر گروه | ربات مدیر گروه همسریابی

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

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

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

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


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

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

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


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