PHP fopen dosya.

3 Cevap php

Merhaba benim yolları ve benim web sunucusu referans ile fopen ile ilgili sorunlar yaşıyorum.

I public/dan/new/apps/lovescopes/thisfile.php kaydedilmiş bir dosya var.

thisfile.php public/internalServer/lovescopes/xml/2009/12 "x +" fopen kullanarak yeni bir dosya oluşturur.

şimdi benim hataları fopen olduğu satırda gösterir:

I gibi göreceli olarak yolu yazarsanız 1..) ../../../../internalServer/lovescopes/xml/2009/12 Ben bir izin engellendi hatası ile sonuna kadar.

I. Gibi bir mutlak yolunu yazarsanız 2) /public/internalServer/lovescopes/xml/2009/12 I ": Böyle bir dosya ya da dizin akımı açılamadı" ile sona

Ben göreli veya mutlak yolları kullanmak gerekir eğer ben yine kafam karıştı. Ben bir ftp_nlist var ve # 2 ile iyi çalıştı. Fopen aynı mıdır?

Ayrıca ben aynı yolun noktalarını inanıyorum farklı hata iletileri ile, ben doğru 1 veya 2 yapıyorum hangi yol bilmiyorum?

Yardım herhangi bir tür büyük mutluluk duyacağız.

3 Cevap

Neden göreli yolları ile kullanımı realpath() kullanmayın.

Ayrıca permission denied size erişim çalıştığınız klasör web sunucusu tarafından okunabilir ve / veya yazılabilir olmadığına ya da PHP süreç altında çalışan ne olursa olsun kullanıcı gösterir.

Eğer / bir değişkene tek seferde dosyaları yazmak / okumak istiyorsanız ek olarak, size file_get_contents() ve file_put_contents() kullanmak isteyebilirsiniz.

PHP işlevi kendisi yoluna bağlı olduğunu, mutlak ne de göreceli ne olduğunu.

Alıyoruz hem de hataları olduğunu belirli bir yola ilgili, izinler veya varlığı da, bu yüzden var biliyorum ve (geçerli dizin iyi bir yer olabilir) ve o çalışırken erişimi olan bir yol alıyorum tavsiye ederim. Siz aynı zamanda geçici chmod dosya ve yol, sadece okuma erişimi olduğundan emin olmak için. Sonuçlarını ve hataları yazdırın.

fopen("public/dan/new/apps/lovescopes/test.php");
fopen("./test.php");

Ne o hataları dönerseniz, bunu sadece bir yol sorunu olduğunu anlarsınız.

Ayrıca, PHP süreç kullanıcı farklı izinlere sahip, böylece için dışarı izleyebilirsiniz.

Eğer komut bu dosya erişim iznine sahip olduğundan emin olmak gerekir