• 05-01-2020, 21:39:49
    #1
    Merhaba arkadaşla. Php ile bir proje yapmaya çalışıyorum. Garip bir şeyle karşılaşdım.
    3 ayrı klasörüm var diyelim
    Php klasörü
    1. db.php
    2. dbconfig.php
    3. function.php
    Class Klasörü
    1. crud.php

    crud.php içeriği
    require_once '../php/dbconfig.php';

    function.php içeriği
    require_once 'db.php';
    require_once '../class/crud.php';

    karşılaştığım hata şöyle.
    function.php dosyama crud.php require etdiyimde hata veriyo sebebi crud.php artık php klasöründen aldığı dbconfig.php dosyasına ulaşamıyor dosya yolu karışıyo. Dosyaları aynı klasöre taşıya bilirim fakat başka ne gibi çözümler önere bilirsiniz? Sabit deyişkenlerlede yapa bilirim fakat bunun include_path falan gibi fonksiyonlarla hall etmek olurmu
  • 05-01-2020, 21:59:35
    #2
    __DIR__ sabitini kullanarak tam yolu belirtebilir ya da getcwd() fonksiyonunu kullanarak çalışma dizinini belirtebilirsin. Bu sayede dizinlerin karışmasını engellemiş olursun.
  • 06-01-2020, 00:44:11
    #3
    Dosyaya hariçten bir ajax isteği veya doğrudan erişmiyorda include ya da require ile çağırıyorsan artık o dosya dosya başka klasörde bile olsa o çağırdığın dosyaya göre değil çağırdığın yerdeki dosyaya göre konum araman gerek.

    Yani 2 klasör olsun

    Otomobil/functions.php
    YedekParca/parcalar.php

    Sen burada parcalar.php içinden functions.php çağırırsan ../ bir üst klasör yolunu kullanırsın ancak parçalar klasörünü ana dizinde bulunan bir dosyadan çağırırsan o zaman o çağırma işlemi ../ olmadan direk yapılması gerekir.