تخطَّ إلى المحتوى

عناصر نموذج XOOPS

يوفر XOOPS مجموعة شاملة من عناصر النموذج من خلال الهرمية الفئة XoopsFormElement. تتعامل هذه العناصر مع العرض والتحقق من الصحة ومعالجة البيانات للنماذج الويب.

classDiagram
class XoopsFormElement {
+getName()
+getCaption()
+render()
+setValue()
+getValue()
}
XoopsFormElement <|-- XoopsFormText
XoopsFormElement <|-- XoopsFormTextArea
XoopsFormElement <|-- XoopsFormSelect
XoopsFormElement <|-- XoopsFormCheckBox
XoopsFormElement <|-- XoopsFormRadio
XoopsFormElement <|-- XoopsFormButton
XoopsFormElement <|-- XoopsFormHidden
XoopsFormElement <|-- XoopsFormFile
XoopsFormElement <|-- XoopsFormLabel
XoopsFormElement <|-- XoopsFormPassword
XoopsFormElement <|-- XoopsFormDateTime

إدخال نص سطر واحد:

use XoopsFormText;
$element = new XoopsFormText(
caption: 'Username',
name: 'username',
size: 30,
maxlength: 50,
value: $currentValue
);

إدخال كلمة المرور مع إخفاء:

use XoopsFormPassword;
$element = new XoopsFormPassword(
caption: 'Password',
name: 'password',
size: 30,
maxlength: 100
);

إدخال نص متعدد الأسطر:

use XoopsFormTextArea;
$element = new XoopsFormTextArea(
caption: 'Description',
name: 'description',
value: $currentValue,
rows: 5,
cols: 50
);

اختيار منسدل:

use XoopsFormSelect;
$element = new XoopsFormSelect(
caption: 'Category',
name: 'category_id',
value: $selected,
size: 1,
multiple: false
);
$element->addOption(1, 'Category 1');
$element->addOption(2, 'Category 2');
$element->addOptionArray([
3 => 'Category 3',
4 => 'Category 4'
]);

إدخال خانة اختيار:

use XoopsFormCheckBox;
$element = new XoopsFormCheckBox(
caption: 'Features',
name: 'features',
value: $selected
);
$element->addOption('comments', 'Enable Comments');
$element->addOption('ratings', 'Enable Ratings');

مجموعة أزرار الراديو:

use XoopsFormRadio;
$element = new XoopsFormRadio(
caption: 'Status',
name: 'status',
value: $currentValue
);
$element->addOption('draft', 'Draft');
$element->addOption('published', 'Published');
$element->addOption('archived', 'Archived');

إدخال تحميل الملف:

use XoopsFormFile;
$element = new XoopsFormFile(
caption: 'Upload Image',
name: 'image'
);
$element->setMaxFileSize(2 * 1024 * 1024); // 2MB

منتقي التاريخ والوقت:

use XoopsFormDateTime;
$element = new XoopsFormDateTime(
caption: 'Publish Date',
name: 'publish_date',
size: 15,
value: time()
);

حقل مخفي:

use XoopsFormHidden;
$element = new XoopsFormHidden('article_id', $articleId);

تسمية عرض فقط:

use XoopsFormLabel;
$element = new XoopsFormLabel(
caption: 'Created By',
value: $authorName
);

أزرار النموذج:

use XoopsFormButton;
// زر الإرسال
$submit = new XoopsFormButton('', 'submit', 'Save', 'submit');
// زر إعادة تعيين
$reset = new XoopsFormButton('', 'reset', 'Reset', 'reset');
$element->setExtra('class="form-control custom-class"');
$element->setExtra('data-validate="required" placeholder="Enter text..."');
$element->setDescription('Enter a unique username (3-20 characters)');
  • نظرة عامة على النماذج
  • التحقق من صحة النموذج
  • عارضات مخصصة