2012-09-29 98 views
-4

背景:我使用Apache和XAMPP来设置本地主机。 我对编程比较陌生,对PHP也很新颖。我试图在与我的Javascript文件相同的目录中调用PHP文件,但我使用的代码似乎不起作用。这里有一个例子:

的Javascript:

function SendPhps(){ 
var point = 2;' 
$.post('json.php',point);} 
$(document).ready(function(){ 
SendPhps(); 
}); 

PHP:

<?php 
if(!empty($_POST)){ 
file_put_contents('example.txt','Itworks'); 
} 
?> 

编辑:好吧,我修订我的脚本更简单,但还是打开我的网页不会触发任何提示框:

PHP:

<?php 
    if (empty($_POST)) 
     echo "empty"; 
    else 
     echo "not empty"; 
?> 

Javascript:

$(document).ready(function() { 
    var point = {'param':2}; 
    $.post(
     'json.php', 
     point, 
     function(data){ 
      alert(data); 
     } 
    ); 
}); 
+2

确定apache用户对'example.txt'写权限? –

+0

“SendPhps”的结尾括号不存在。你也有一个流浪的引号。 – 0x499602D2

+1

您编辑了您的帖子以在'2;'之后添加'''为什么? @David它在第3行的末尾。 – sachleen

回答

1

您的var变量需要有一个比这更有意义的结构。 '2'对一个帖子意味着什么?真的没什么。给它一个名字。即

 var point = {'html':2}; 

因为你只是学习,不要试图同时做多件事情就像写一个文件。把事情简单化。只需让你的PHP回应你的结果。

这里是一个关于jsfiddle使用他们的'echo/html'URL的例子 - 它简单地回应了你为'html'参数设置的任何值。

http://jsfiddle.net/k5ygv/

+0

好吧,我试过了你的脚本,但是当我打开页面时,我仍然没有收到任何警报。 – user1707619

+0

看到我添加的链接。我必须将'param'改为'html',因为这就是URL所期望的。但无论如何,它显示$ .post()函数是如何工作的。 – dispake