【发布时间】:2012-11-10 13:42:51
【问题描述】:
我正在使用fopen 创建一个新文件。在我的本地服务器上它工作正常,但是在我的网络服务器(与 goDaddy 的 linux 共享主机)上我得到:
警告:fopen(invoices/qbImport519.iif) [function.fopen]:无法打开流:/home/content/c/h/i/chisled/html/tracking_admin/qbInvoices.php 中没有这样的文件或目录在第 97 行
认为这是网络服务器上的设置,我联系了 GoDaddy,他回复说我的帐户上的所有设置都正确,可以正常工作。有任何想法吗?
这是我的代码:
$qbFile = fopen("invoices/qbImport".$Hits.".iif","ab");
if (is_writable("invoices/qbImport".$Hits.".iif")){
if (fwrite($qbFile,$iifWrite)){
echo'<a href="invoices/qbImport'.$Hits.'.iif">Download Your File</a><br/>';
else {
echo "<p>Cannot add your entry</p>";
}
}
else {
echo "<p>The file is not writeable</p>";
}
fclose($qbFile);
我已经尝试了/home/content/c/h/i/chiseled/html/tracking_admin/invoices 和invoices/ 的路径。
该文件不存在,因为它基于每次递增的$hits 变量。所以由于某种原因,它无法创建新文件。我还尝试了 a 的 fopen 模式。
任何帮助都会很棒。谢谢。
【问题讨论】:
-
你确定路径存在并且你有写权限?
-
那么,您尝试在其中创建文件的文件夹的权限是什么?以及运行 Web 服务器的帐户是什么?
-
路径
home/content/c/h/i/chiseled/html/tracking_admin/真的存在吗? fwrite 不会为您创建目录,并且 Web 服务器必须对其具有写入权限。 -
感谢您的快速回复。我是个白痴。我已将目录创建为“发票”而不是“发票”。我可以降低自己的声望点吗?大声笑