تفاصيل الحلقة
- المستوى : متقدم
- المدة : ٣٠ دقيقة
توطيد
قبل البدء بقراءة تعليمات الحلقة الخامسة من سلسلة تعلم منصة عمل زند لابد ان تكون قد أنشأت نطاق محلي وقد أتممت قراءة الحلقات السابقة لزند ، يمنكم الوصول للحلقات السابقة هنا :
تأكد من إعدادات ضبط التطبيق
من عمل سطر الأوامر لديك بكتابة الامر :
zf show version
إذا ظهرت النتيجة لديك بظهور إصدار زند
Zend Framework Version: 1.11.2
تأكد من عمل نطاق العمل المنشأ بالحلقة الثالثة
http://www1.zendapp.com
قم بمراجعة الحلقات السابقة في حال عدم عمل أي من الأمرين السابقين.
أولاً إنشاء الصفحات
لإنشاء الصفحات الإلكترونية فإن ما نحتاج إليه في تطبيقات زند هو إضافة action جديدة ، تذكر أن action هي عبارة عن دالة داخل فئة ( class ) من نوع controller ، ولكل أكشن ملف view خاص بها يتم إخراجة للمستخدم عند طلب العنوان الخاص بتلك الصفحة، لإضافة action جديدة فإننا نستخدم سطر الاومر لذلك تأكد من وجودك داخل مجلد التطبيق الرئيسي بإستخدام الأمر
cd /path/to/your/application
مستبدلا العنوان الصحيح على نظامك.
إنشاء صفحة إتصل بنا
لإنشاء صفحة للإتصال بالموقع على سبيل المثال فإننا سنقوم بإنشاء controller جديد بإسم contact وذلك للحصول على عنوان url نظيف لصفحة الإتصال و الأجزاء المتعلقة بها.
zf create controller contact
نلاحظ إنشاء فئة جديدة من نوع controller بإسم ContactController.php داخل مجلد
application/controllers/ContactController.php
يحتوي على action إفتراضيه بإسم index ويحتوي على الكود التالي :
<?php
class ContactController extends Zend_Controller_Action
{
public function init()
{
/* Initialize action controller here */
}
public function indexAction()
{
// action body
}
}
وإنشاء ملف view للـ indexAction بالمسار
application/views/scripts/contact/index.phtml
قم بإفراف محتواه وأضف بعض اكواد HTML لإنشاء فورم الإتصال ، ولنقم بإرسال المعلومات إلى صفحة أخرى سنقوم بإنشاءها بإسم send في داخل contact controller.
أزل محتويات ال view واستبدله بالمحتوى التالي :
<form action="/contact/send" method="post" accept-charset="utf-8">
<div id="name">
label for="nametxt"> الإسم الكامل
input type="text" name="name" id="nametxt">
</div>
<div id="name">
label for="msgtxt"> الرسالة
textarea name="msg" id="msgtxt">
</div>
</form
والآن نقوم بإنشاء action بإسم send داخل ContactController بإستخدام امر الإنشاء
zf create action send contact
// الأمر zf create action
// متبوعا بإسم action
// متبوع بإسم controller المراد إنشاء الأكشن بداخله
وثم بالذهاب لملف الـ view
application/views/scripts/contact/send.phtml
واستبدل المحتوى بالتالي :
<h2> <?php echo $_POST['name']; ?> </h2>
<p>
<?php echo $_POST['msg']; ?>
</p>
وقم بزيارة صفحة الفورم، و تعبئة الحقول والضغط على إرسال ...
http://www1.zendapp.com/contact/index/
، وستحال إلى صفحة إظهار البيانات التي قمت بملئها في السابق
خلاصة
إنشاءالصفحات الرئيسية للمواقع يكون بإنشاء controllers و actions متناسقة الأسماء للحصول على عناوين لصفحات الويب جميلة ومقروءة.للإستفسارات استخدم نظام التعليقات في الأسفل .