برمجت موقع على الخادم المحلي وكان يشتغل بشكل ممتاز ولكن عندما رفعتهظهرت لي اخطاء ولكن عرفت سببها وهي انني برمجت الموقع على الخادم المحلي باصدار php7 وعلى الاستضافة كان اصدار php8, وحليت جميع المشاكل واشتغل الموقعدون اخطاء، ولكن عندمارفعت نفس الموقع على استظافه اخرى مجانيه ظهرت اخطاء ومشاكل جديده واهمها هذا الخطاء
Deprecated: Creation of dynamic property Controllers\Login::$pageFileName is deprecated in /home/vol11_1/infinityfree.com/if0_37676707/htdocs/Core/HtmlPage.php on line 58
ما المشكله هل تتعلق بان اصدارphp قديم او ماذا
يبدوا أن إصدار php على الإستضافة المجانية هو 8.2 حيث منذ هذا الإصدار تم جعل التحذير هذا يظهر عندما تقوم بإضافة خصائص للصنف (class) ديناميكيا . أي أن الصنف Login لديك لا يحوي الخاصية pageFileName ولكنك تحاول إضافتها ديناميكا .
لذلك الحل هو إضافة تلك الخاصية داخل الصنف هكذا مثلا :
class Login {
// إضافة الخاصية $pageFileName
public $pageFileName;
public function __construct() {
// يمكنك الآن تعيين قيمة لـ $pageFileName
$this->pageFileName = 'someFileName';
}
}
أو يمكنك تجاهل هذا الأمر إذا أردت حيث إن هذا تحذير وليس مشكلة في الكود حيث من الممكن في الإصدارات القادمة يتم إلغاء الخاصية الديناميكية .
يعني هذه الطريقه سيتم الغائها كليا
<?php
namespace Core;
trait HtmlPage
{//كلاس للعرض اكواد الصفحات الخاصه
public $pageName;//يعيد اسم الصفحه
public $pageTitle;//عنوان الصفحه
public $pageTop;//رقم الصفحه المخصصه لتكون اعلى الصفحه الحاليه
public $pagedown;//رقم الصفحه المخصصه لتكون اسفل الصفحه الحاليه
public $pageId;
public function htmlTage($arr){
التعليقات