PDA

View Full Version : کلاسام تو هاست اصلی خونده نمیشن اما توی لوکال خونده میشن و سایت درست عمل میکنه



saeed-71
پنج شنبه 09 مرداد 1393, 16:59 عصر
سلام.
من سایتم روی لوکال درست کار مکینه اما روز سرور که اپلودش کردم ارور
Fatal error: Class 'Image' not found in میده!



<?php
ob_start();
require_once str_replace('\\', '/', dirname(dirname(__FILE__))) . '/config.php';
function AutoLoad($className) {
if(file_exists(ROOT . 'inc/class.' . $className . '.php')) {
require_once ROOT . 'inc/class.' . $className . '.php';
}
if(file_exists(ROOT . 'inc/interface.' . $className . '.php')) {
require_once ROOT . 'inc/interface.' . $className . '.php';
}
}
spl_autoload_register('AutoLoad');
require_once ROOT . 'inc_config/jdf.php';
require_once ROOT . 'inc_config/reqsess.php';
require_once ROOT . 'inc_config/function.php';
?>

vahidqara
پنج شنبه 09 مرداد 1393, 17:07 عصر
وقتی از تابع autoload استفاده میکنی و یک شی از یک کلاس موجود می سازی اگه کلاس وجود نداشنه باشه یا وجود داره ولی آدرس دهی مشکل
داشته باشی این خطا رو میده ..

saeed-71
پنج شنبه 09 مرداد 1393, 17:15 عصر
اما من چک کردم.اون کلاس تو هاس آپلود شده بود و اطلاعاتتتشم کامل بود.
تو لوکال هیچ مشکلی نیست و خونده میشه.
همه کلاس ها خونده میشن فقط یکیشون خونده نمیشه!
گرفتم


require_once ROOT . 'inc/Class.Image.php';

این کلاسی که خونده نمیشد رو reauire کردم درست شد.
بازم میگم این برنامه رو لوکول هاست دقیق همه کلاسا خونده میشن ولی رو هاست فقط این کلاس خونده نمیشه!

saeed-71
پنج شنبه 09 مرداد 1393, 17:25 عصر
دلیلشو فهمیدم اسم این کلاس اولش با C بزرگ نوشته شده اما باید با C کوچیک نوشته میشد.
روی لوکال درست عمل میکرد اما سرور خیر.

MRmoon
پنج شنبه 09 مرداد 1393, 17:26 عصر
درود.

احتمال میدم هاست لینوکسه درسته؟

لینوکس بر عکس ویندوز رو بزرگ و کوچیکی حروف حساس هست و برای مثال Class.php با class.php فرق داره!!!

و برای همینه که فایل کلاس شما Class.Image.php هستش ولی autoload می خواد فایل class.Image.php رو فراخوانی و معلومه که پیدا نمیشه. چون اصلا فایلی با اون نام نیست!

--- پ.ن : پیشنهاد می کنم یکی از توزیع های لینوکس(پیشنهاد خودم مینت یا اوبونتو) رو نصب کنید و اونجا کد بنویسید.
محمد.