Neden "dizini mevcut değil?" Almaya devam edersiniz

4 Cevap

Ben burada yanlış ne yapıyorum bilemiyorum. Ben oluşturulan dosya için sahip dizinin izinleri tüm yönüyle yazma izinlerine sahip. Ben yardım için teşekkür ederiz "dizini mevcut değil" almaya devam ediyorum!

<?
//creates variables and calls the information from the server
$Name = $_POST['name'];
$desc = $_POST['desc'];
$website =$_POST['web'];
$email =$_POST['email'];
$cname =$_POST['cname'];
echo "your registered name is: ". $Name . ".<br/>";
echo "your registered description is: " . $desc . ".<br/>";
echo "your website address is: " . $website . ".<br/>";
echo "your Confirmation email has been sent to: " . $email . ".<br/>";

echo "your information has been stored, thank you! ";

$cname = trim($cname);

$filename = "data/clubinfo/$cname.txt";
$fp = fopen($filename,'a');
fwrite($fp,$Name);
fwrite($fp,"\n");
fwrite($fp,$email);
fwrite($fp,"\n");
fwrite($fp,$desc);
fwrite($fp,"\n");
fwrite($fp, $website);
fwrite($fp, "\n");
fwrite($fp,"__");
fwrite($fp, "\n");
fclose($fp);




 ?>

4 Cevap

Büyük olasılıkla script göreli bir yol kullanıyorsanız beri küstah konum ne farklı bir çalışma dizini üstleniyor.

Kesinlikle ya da en azından $_SERVER['DOCUMENT_ROOT'] ile ilgili olarak yapmanız bile yol belirterek daha iyi olurdu:

$filename = $_SERVER['DOCUMENT_ROOT'] . "../data/clubinfo/$cname.txt";

Bunun avantajı, Web sunucusu tarafından doğrudan hizmet olmayacak bu yüzden belge kök dışında olmasıdır. Aynı zamanda olursa olsun senaryonuzun yerini çalışacak ve eşya dağıtımları vs dev bir sorun olabilir WebAPP yüklemek hangi dizin altında olursa olsun çalışacak.

data/clubinfo klasör geçerli dizinde yok.

You need to create it first. (By hand or in PHP)
Alternatively, the current directory might not be what you think it is.

file_put_contents() bu gibi kullanmayı deneyin:

file_put_contents("data/clubinfo/$cname.txt", implode("\n", $_POST));

Eğer değeri bu değere istiyorsanız siz de FILE_APPEND bayrağını kullanmalısınız.

Eğer kök kapalı yolu vermediyseniz ve sunucu geçerli konumundan bakıyor gibi görünüyor. kök kapalı yol vererek deneyin.