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