نمایش نتایج 1 تا 6 از 6

نام تاپیک: مسیر دهی فایل ها در همه فولدر ها با PHP

  1. #1

    Question مسیر دهی فایل ها در همه فولدر ها با PHP

    سلام ؛

    دوستان من مبتدی هستم در پی اچ پی , ممنون میشم کمکم کنید تو این مورد .

    من یه سی ام اس دارم خودم مینویسم . توی این سی ام اس , میخام ادرس دهی کنم . ولی با مشکل برخوردم .
    مثلا :
    Untitled.png

    اگه من فایلی با ادرس core/init.php را به فایل ایندکس اصلی روت بدم مشکلی پیش نمیاد . اما اگر این فایل را الصاق کنم به پوشه ادمین و یا پوشه اینکلود . دیگه اونوقت نمایش نمیده و این ارور را میده :
    Warning: include(core/database/connect.php): failed to open stream: No such file or directory in C:\xampp\htdocs\AOC2\core\functions\title.php on line 2

    Warning: include(): Failed opening 'core/database/connect.php' for inclusion (include_path='C:\xampp\php\PEAR') in C:\xampp\htdocs\AOC2\core\functions\title.php on line 2

    چطور میتونم یک مسیر دینامیک داشته باشم که همه جای سی ام اس کار کنه ؟


  2. #2
    کاربر دائمی آواتار plague
    تاریخ عضویت
    آبان 1388
    محل زندگی
    اهواز
    پست
    2,360

    نقل قول: مسیر دهی فایل ها در همه فولدر ها با PHP

    یه مسیر دهی نسبی داریم یه مسیر دهی مطلق
    مسیر دهی نسبی یعنی نسبت به مکانی که الان توش قرار داریم بخایم آدرس بدیم
    مسیر دهی مطلق یعنی از یک مکان ثابت که همه زیر مسیر ها اون رو بشناسن

    شما الان داری نسبی آدرس دهی میکنی یعنی فایل title.php داره توی فولدر های اطرافش دنبال فولدر core میگرده که مشخصا همچین فولدری رو نمیبینه چون اصلا توی یک لول دیگه قرار داره اون
    اگه بخای نسبی آدرس بدی باید اول یه فولدر بیای عقب تا توی core بری بعد بر تو دیتابیس یعنی اینجوری میشه

    ../database/connect.php

    یا اینکه میتونی آدرس مطلق از ریشه دایکتوری بدی که در همه آدرس ها صحیح خواهد بود مثلا تو ویندوز ریشه دایرکتوری میشه درایو c (اگه ومپ رو تو درایو c نصب کردی )

    با
     $_SERVER['DOCUMENT_ROOT']


    میتونی ریشه رو بدست بیاری و بچسبونی به اول آدرس هات بهتره یه فاکنکشن بنویسی یا یه ثابت که این رو هی نخاد تایب کنی


    https://stackoverflow.com/a/344853/590589

  3. #3

    نقل قول: مسیر دهی فایل ها در همه فولدر ها با PHP

    نقل قول نوشته شده توسط plague مشاهده تاپیک
    یه مسیر دهی نسبی داریم یه مسیر دهی مطلق
    مسیر دهی نسبی یعنی نسبت به مکانی که الان توش قرار داریم بخایم آدرس بدیم
    مسیر دهی مطلق یعنی از یک مکان ثابت که همه زیر مسیر ها اون رو بشناسن

    شما الان داری نسبی آدرس دهی میکنی یعنی فایل title.php داره توی فولدر های اطرافش دنبال فولدر core میگرده که مشخصا همچین فولدری رو نمیبینه چون اصلا توی یک لول دیگه قرار داره اون
    اگه بخای نسبی آدرس بدی باید اول یه فولدر بیای عقب تا توی core بری بعد بر تو دیتابیس یعنی اینجوری میشه

    ../database/connect.php

    یا اینکه میتونی آدرس مطلق از ریشه دایکتوری بدی که در همه آدرس ها صحیح خواهد بود مثلا تو ویندوز ریشه دایرکتوری میشه درایو c (اگه ومپ رو تو درایو c نصب کردی )

    با
     $_SERVER['DOCUMENT_ROOT']


    میتونی ریشه رو بدست بیاری و بچسبونی به اول آدرس هات بهتره یه فاکنکشن بنویسی یا یه ثابت که این رو هی نخاد تایب کنی


    https://stackoverflow.com/a/344853/590589
    اون ادرس اصلی رو میشناسه که بهش دادم .

    اما مشکل اینجاست که مثلا من توی یه فایلی به اسم init.php یه اینکلود کردم فایل دیتابیسم رو . الان وقتی این فایل init رو که فراخوانی میکنم توی ایندکس کار میکنه . اما توی ادمین فولدر کار نمیکنه . میگه نمیشناسم .

    من اون لیک که دادین رو هم خواندم .

    ممنون میشم یه راهنمایی بهتر کنید . یا اگه مقدور است اون فانکشن را بنویسید یا نمونش را بدین من بنویسم .

    اخه مشکلم تو همه فایل ها است . نه یکی دو تا .

  4. #4
    کاربر دائمی آواتار plague
    تاریخ عضویت
    آبان 1388
    محل زندگی
    اهواز
    پست
    2,360

    نقل قول: مسیر دهی فایل ها در همه فولدر ها با PHP

    شما خوندی 2-3 خط اولی که نوشتم رو ؟ توی ایندکس کار میکنه برای اینکه آدرس نسبت به فایل ایندکس درسته
    توی init.php کار نمیکنه برای اینکه آدرس نسبت به اون درست نیست
    فرض کن یه خونه داری با 5 تا اتاق
    اگه تو اتاق شماره 4 باشی کسی ازت بپرسه چجوری برم به اتاق شماره 5 شما آدرس میدی 1 اتاق برو به سمت راست مثلا
    اگه بری تو اتاق شماره 2 کسی ازت همون سوال رو بپرسه دیگه آدرس : 1 اتاق برو سمت راست به اتاق 5 نمیرسه و آدرس غلطه و باید آدرس رو تغییر بدی

    راهش اینه که بجای اینکه آدرس رو نسبت به مکان فعلیت بدی از یه مکان ریشه که همه بشناسنش مثلا از دم در خونه شروع کنی مثلا : از دم در خونه 5 تا اتاق میری سمت راست
    دیگه این آدرس هرجا بری صحیحه و به اتاق 5 میرسه

    آدرس ریشه سایت رو توی این داری (همون در خونه )
    $_SERVER['DOCUMENT_ROOT']


    حالا کافیه آدرس فایلت (اتاق) رو بچسبونی بهش تا یه آدرس مطلق از اون فایل بدست بیاری

  5. #5

    نقل قول: مسیر دهی فایل ها در همه فولدر ها با PHP

    بله همه را خواندم و متوجه شدم . اما منم همین راهی که گفتیم رو رفتم و بهش ادرس را دارم . ولی بازم نتونست بخونه .

    اینم ارورش :
    Warning: require(C:/xampp/htdocs/core/database/connect.php): failed to open stream: No such file or directory in C:\xampp\htdocs\project\core\init.php on line 5

    Fatal error: require(): Failed opening required 'C:/xampp/htdocs/core/database/connect.php' (include_path='C:\xampp\php\PEAR') in C:\xampp\htdocs\project\core\init.php on line 5

    و اینم کد داخل init.php

    <?phpsession_start();//error_reporting(0);
    require $_SERVER['DOCUMENT_ROOT']. '' . '/core/database/connect.php';require $_SERVER['DOCUMENT_ROOT']. '/core/functions/general.php';require $_SERVER['DOCUMENT_ROOT']. '/core/functions/users.php';
    $errors = array();
    ?>


    مشکل اینجاست که این کدی که دادین میره از رو درایو C پیدا میکنه . اما پی اچ پی نیاز به سرور داره و باید با ادرس لوکال هاست و نام پروژه باشه ادرس . امیدوارم متوجه منظورم شده باشید .

  6. #6
    کاربر دائمی آواتار plague
    تاریخ عضویت
    آبان 1388
    محل زندگی
    اهواز
    پست
    2,360

    نقل قول: مسیر دهی فایل ها در همه فولدر ها با PHP

    اسم فولدر سایتت رو هم باید بزاری توی آدرس
    اگه آدرسی که تو اررور اومده رو نگاه کنی متوجه میشی که چی کمه

    مشکل اینجاست که این کدی که دادین میره از رو درایو C پیدا میکنه . اما پی اچ پی نیاز به سرور داره و باید با ادرس لوکال هاست و نام پروژه باشه ادرس . امیدوارم متوجه منظورم شده باشید .
    خیر اگه قرار باشه از آدرس Http اینکلود کنی فایل ها رو چی باعث میشه یه سایت خارجی فایل های شما رو اینکلود نکنه ؟
    سرور رو با وب سروس قاطی نکن
    شما از طریق آدرس localhost درخواست میفرستی به سرور که فلان فایل رو میخام
    کدا روی سرور اجرا میشن که یک کامپیوتره که درایو و فولدر و فایل داره (حداقل تو ویندوز )
    این فایل ها موقع اجرا شدن باید بتونن همدیگه رو پیدا بکنن از طریق آدرس دهی که شامل این فولدر ها و درایو ها میشه
    خروجی که از اون اجرا به دست میاد برای شما فرستاده میشه

برچسب های این تاپیک

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •