Linux ve Diğer İşletim Sistemleri
Linux'a Windows'tan Kopyaladığım Dosyalardaki Php Sorunu
Linux'a Windows'tan Kopyaladığım Dosyalardaki Php Sorunu
-
arkadaşlar linux üzerinde yazdığım kodlar sorunsuz çalışıyor fakat windows' tan çektiğim dosya ve klasörler üzerinde ise şu hatayı alıyorum :
Warning: include(): Failed opening 'indexdata.php' for inclusion (include_path='.:/usr/share/php:/usr/share/pear') in /home/xxx/www/web/index.php on line 22
yardımcı olursanız sevinirim. -
include kodundaki adresi değiştirmemişsin.
-
windowsda sorunsuz çalışıyor aynı kodlar sorun o değil
-
Aynı kodlar sorunsuz çalışır windows'ta çünkü include komutu dosyanın windows'taki yerine göre yazılmıştır. index.php 22. satırı yapıştırsana buraya.
-
.....
/home/xxx/www/indexdata.php
22. satırda da
<?php include("indexdata.php"); ?>
problem yine o değil kısaca... -
<?php include("./indexdata.php"); ?> olarak değiştirmeyi dene.
-
linux te su . nin mantigni bir kavrasam :)
-
alt klasördeki dosyadan üst dosyadaki php dosyasını çağırıyosun ../ koy başına ../asd.php gibi
-
rakkoc bunu yazdı:
-----------------------------linux te su . nin mantigni bir kavrasam :)
-----------------------------./ -> şu anki klasör, neresini anlayamadın? Shell'de kullanılan komutların bir kısmı built-in ama büyük bir çoğunluğu çalıştırılabilir programlar. Eğer built-in'se komut direk çalışır ama değilse programın tam yolunun girilmesi gerek. Sık kullanılan komutlar için sürekli komutun tam yolunu yazmak cehennem olurdu, bu yüzden PATH değişkeni var. Girilen komut built-in veya tam bir yol değilse shell otomatik olarak PATH global değişkenindeki klasörleri kontrol eder, bu sayede ilgili komuta(program) kolayca ulaşılmış olur. Shell karışmaya sebep vermemek için normalde komut girildiğinde eğer current directory(şu anki klasör) PATH değişkenine eklenmemişse current directory'e bakmaz. "./" kullanarak programın tam yolunu girmiş oluyoruz. Çok kullanışlı süper bir şey. Aynı şekilde "../" yani bir üst klasör de öyle. PATH değişkenine "." ekleyerek "./" kullanma gerekliliğini ortadan kaldırabilirsin. Ama böyle bir durumda eğer bir shell komutu ile aynı isimde dosya oluşturursan çalıştırmaya kalktığında shell programı değil komutu çalıştırır.
-
arkadaşlar sorun o değil, dediklerinizi de yaptım ama aynı gidiyor.
-
dosyanın bulunduğu klasörde ls -al indexdata.php ile izinleri kontrol eder misin