从javascript获取内容的PHP文件创建

从javascript获取内容的PHP文件创建,php,javascript,ajax,Php,Javascript,Ajax,我正在尝试创建一个网站,在这个网站上,用户应该在文本区域中输入一个短文本,并输入他们的电子邮件和个人id。我正在尝试在一个变量中通过javascript发送此信息。问题是当IRON代码中没有创建文件时。这是我正在使用的代码 function load(){ var xmlhttp; if(window.XMLHttpRequest){ xmlHttp= new XMLHttpRequest(); }else{

我正在尝试创建一个网站,在这个网站上,用户应该在文本区域中输入一个短文本,并输入他们的电子邮件和个人id。我正在尝试在一个变量中通过javascript发送此信息。问题是当IRON代码中没有创建文件时。这是我正在使用的代码

    function load(){
       var xmlhttp;
       if(window.XMLHttpRequest){
              xmlHttp= new XMLHttpRequest();
           }else{
       xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}


    var textToSend=document.forms["form"].id.value + " "+document.forms["form"].mail.value+" "+document.forms["form"

xmlhttp.open("GET","serverside.php?txt="+textToSend,"true");
xmlhttp.send();
   }



    <?php
    $txt=$_GET["txt"];
    $spacing="\n \n";

    $my_file = 'userdata.txt';
    $handle = fopen($my_file, 'a') or die('Cannot open file: '.$my_file);
    fwrite($handle, $txt);
    fclose($handle);

    ?>
函数加载(){
var-xmlhttp;
if(window.XMLHttpRequest){
xmlHttp=新的XMLHttpRequest();
}否则{
xmlHttp=新的ActiveXObject(“Microsoft.xmlHttp”);
}
var textToSend=document.forms[“form”].id.value+“”+document.forms[“form”].mail.value+“”+document.forms[“form”
open(“GET”,“serverside.php?txt=“+textToSend,”true”);
xmlhttp.send();
}

我不能保证这些方法中的任何一种都能解决问题,但您应该试试它们:
1) 使用
POST
而不是
GET

2) 不要使用
$my\u file='userdata.txt'
尝试
$my\u file=''./userdata.txt'


3) 在
fopen
中使用
w
而不是
a
fopen
函数默认情况下不会创建文件--它会失败,并出现“没有这样的文件或目录”错误。您说“没有创建任何文件”,所以我相信您没有手动创建userdata.txt文件


创建空的userdata.txt文件,看看是否有帮助。

在提交此类数据时,您应该使用
POST
。您不需要文件的完整路径吗?例如“/var/www/myapp/files/userdata.txt”尝试回显
$txt
的值,以检查其中一些值是否被忽略。