بایگانی

بایگانی برای دسته ی ‘Yii Framework’

فیلترها در کنترلر Yii

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

فیلتر ها به دو صورت پیاده سازی می شوند: ۱- براساس متد، ۲- براساس کلاس. برای اعمال یک فیلتر برای اکشن از علامت + و برای جلوگیری از اجرای فیلتر از علامت – استفاده می شود. به عبارت دیگر اعمال فیلتر تعریف شده فقط شامل  اکشن هایی می شود که با علامت + فیلتر شوند، و اعمال فیلتر تعریف شده فقط اکشن هایی را مستثنی می کند که با علامت – مشخص شوند.

سه فیلتر از نوع متد از قبل داخل کلاس کنترلر تعریف شده اند. این فیلتر ها به نام های: accessControl, ajaxOnly و postOnly هستند که به ترتیب برای اعمال سطح دستری به اکشن خاص، بررسی درخواست های ارسالی از طریق آجاکس برای اکشن باشد و بررسی درخواست های ارسالی از طریق POST برای اکشن باشد. ادامه ی نوشته

نحوه استفاده از Query Builder در Yii 1.1

همانطور که می دانید در فریمورک Yii برای استفاده از دیتابیس سه راه وجود دارد:

  1. استفاده از Activr Record کلاس CActiveRecord.
  2. استفاده از دستورات داخلی سازنده فرامین دیتابیس معروف به Query Builder (کلاس CDbCommandBuilder).
  3. استفاده و اجرای مستقیم دستورات sql که معروف به DAO – Database Access Objects (همان کلاس CDbCommandBuilder).

وقتی از ابزار Gii استفاده می کنید به طور معمولو به صورت پیش فرض خود فریمورک کدهای تولیدی را بر مبنای Active Record ایجاد می کند. ما در این نوشته قصد داریم تا با حالت دوم دسترسی به دیتابیس یعنی Query Builder را توضیح بدیم.

ادامه ی نوشته

کار کردن با jQuery UI Datepicker در Yii

همه ما کار کردن با ابزارهای کوچک و ساده و قشنگ را دوست داریم، یکی از آن ابزارها به نام JQuery UI Datepicker به عنوان یک المان ورودی برای تاریخ است. فریمورک Yii نیز این ابزار به عنوان یک ویدجت با نام CJuiDatePicker ارائه داده است. اکنون اجازه بدید با هم نگاهی به نحوه کارکرد آن داشته باشیم.

موارد اولیه

فرض کنید که یک تگ ورودی متنی معمولی برای تاریخ در فرم داریم:

ادامه ی نوشته

دسته هاPHP, Tutorial, Yii Framework برچسب ها:, , , , ,

مثال برای کلاس CFrom

CForm در Yii. مدل:

ادامه ی نوشته

آپلود فایل در Yii

برای آپلود هر نوع فایلی با فریمورک Yii، به ویژه برای فایلهای تصاویر که استفاده و کاربرد زیادی هم دارند،  از مراحل زیر پیروی کنید. البته باید اشاره کرد که این مراحلی طوری بیان شده اند که هم برای اضافه کردن تصویر جدید و هم برای ویرایش تصویر قبلی کاربرد دارد.

مدل(Model)

ابتدا با فایل مدل شروع می کنیم. در این فایل باید قوانین مربوط به نوع فایل برای اعتبارسنجی مناسب آن اعمال کنیم.

ادامه ی نوشته

استفاده از چک باکس به صورت دسته ای

با سلام. در طراحی صفحات وب معمولا برای برخی فیلد های درون فرمها، طراحان نیاز به استفاده از چک باکس دارند تا کاربر  آن ها را تیک بزند، این امر با تگ های ساده HTML به راحتی و با کد زیر قابل اجر است:

ادامه ی نوشته

مدیریت دیتابیس ها با برنامه Yii-Chive

با سلام، دوستانی که برنامه نویسی و به خصوص طراحی وب با php می کنند حتما با برنامه مدیریت بانک های اطلاعات phpMyAdmin که یک برنامه بسیار قوی است آشنایی دارند. اکنون قصد داریم تا برنامه ای را به عنوان جایگزین phpMyAdmin، با همان امکانات ولی با تفاوت هایی در طراحی و ساختار را به نام Chive شما معرفی کنیم.

قابل ذکر است که برنامه هایی دیگری را هم می توانید برای phpMyAdmin و هم چنین برای برنامه chive در سایت alternativeto مشاهده نمایید. ادامه ی نوشته

یادگیری فریمورک Yii-بخش ۸

در آغاز سخن، از همه دوستان به خاطر تأخیر پوزش می خواهم، مطالب دیر به دیر آماده می شود. در بخش هفتم این مجموعه سری آموزشی با برخی از موضوعات و مفاهیم آغازین یک برنامه از قبیل روند شروع برنامه، مفهوم خود برنامه، تنظیمات اولیه یا پیش فرض برنامه و ویژگی های مسیر برنامه در این فریمورک به طور اجمالی آشنا شدیم.

در ادامه مطالب قبلی، قصد داریم تا مفاهیم کامپوننت های برنامه و هسته و چرخه حیات یک برنامه تولیدی با این فریمورک را بیان کنیم.

مؤلفه های برنامه

عملکرد خود شئ برنامه می‌تواند به سادگی تغییر کند و با بهره گیری از معماری منعطف مؤلفه ها یا همان کامپوننت ها آن را غنی تر کرد. این شئ یک مجموعه از مؤلفه های برنامه اصلی را که هرکدام یک ویژگی و کارایی خاصی از آن را ارائه می کند، مدیریت می‌کند. برای مثال، شئ برنامه، پردازش های اولیه مربوط به درخواست کاربر نهایی را به کمک مؤلفه های CurlManager و ChttpRequest انجام می‌دهد. ادامه ی نوشته