Jquery Post Method在本地但不在服务器上工作

时间:2012-07-30 10:04:43

标签: php javascript jquery html json

我有一个简单的函数,必须写在文件上,它在我的本地服务器上工作但是当我在服务器上部署它时,它不会写在文件上?有什么问题?

foo.php

<?
if (isset($_POST['data'])) {
         $stringData = $_POST['data'];
         $file = "ciao.txt"; 
         $fh = fopen($file, 'w') or die("can't open file");
         fwrite($fh, $stringData);
         fclose($fh); 
 }
 ?>

function.js

function WriteToFile() 
{
    var data = "foo baaar";
    $.post("JS/foo.php", {data: data}, function(result){ alert("label updated!!");}, "json");
}

2 个答案:

答案 0 :(得分:0)

检查服务器上的文件权限。让它可写。

答案 1 :(得分:0)

<?
if (isset($_POST['data'])) {
         $stringData = $_POST['data'];
         $file = "ciao.txt"; 
         $fh = fopen($file, 'w') or die("can't open file");
         fwrite($fh, $stringData);
         fclose($fh); 
 }
 ?>

fwrite()返回写入的字节数,或者出错时返回FALSE。 改变fwrite($ fh,$ stringData);

$ written = fwrite($ fh,$ stringData); print $ written;

现在您可以获得数据写入与否的天气。

或者您可以使用php代码设置文件权限 chmod(“/ somedir / somefile”,0755); // 750或用777进行测试,然后恢复到750或管理员的建议

/ *尝试这个* /

 if (isset($_POST['data'])) {
             $stringData = $_POST['data'];
             $file = "ciao.txt"; 
             chmod($file, 0755);
             $fh = fopen($file, 'w') or die("can't open file");
             fwrite($fh, $stringData);
             $written = fwrite($fh, $stringData);
             print $written;
             fclose($fh); 
     }