繁体   English   中英

试图用php和ajax帖子写入txt文件

[英]trying to write to txt file with php and ajax post

我正在尝试保存一个基于用户与我正在创建的Web应用程序的交互动态创建的字符串。 只是一个字符串。 没什么特别的。 我正在使用ajax将字符串发送到服务器,似乎它正在达到我正在使用的file_put_contents函数的范围,但是似乎很麻烦。 它制作了txt文件,但没有在其中放置任何内容,也没有发送回q,即我拥有它的变量回显了它。

另一个怪异的事情是,当我尝试使用

file_put_contents($putStringHere, $q);

我也尝试过这个:

file_put_contents($putStringHere, "$q");

该文件总是说这发生了:

修改:今天,现在(我上次运行该函数)

上次打开时间:今天(5分钟前)...上次我手动打开文件

这是有道理的,除了上面的函数包含fopen,fmodify,fclose或它们被调用的事实。 以及上次我运行该功能的修改集...我对此感到非常困惑。 任何可以提供帮助的人,我将不胜感激。

发送字符串的ajax(是的,我确保它是字符串)

//ajax for saving changes
function stylesheetBackup(str){
    var xmlhttp = new XMLHttpRequest();
    xmlhttp.open("POST","stylesheetBackupFile.php",true);
    console.log("q="+str);
    xmlhttp.send("q="+str);
}

也尝试过用

xmlhttp.open("POST","stylesheetBackupFile.php",true);
xmlhttp.send();

我用ajax调用的php

<?php
//get the q parameter from URL
$q = $_POST["q"];
$putStringHere = "savedStyleSheet.txt";
//output the response
echo $q;

//save to a backup file
file_put_contents($putStringHere, $q);
?>

您不匹配:

xmlhttp.open("GET"...

$q = $_POST["q"];

以下两件事可能有助于解决您的问题:

  1. 在AJAX请求中,您指定它是GET请求。 但是,在您的PHP文件中,您尝试获取$_POSTq值。 请尝试$_GET['q']
  2. 我不确定您是否可以使用xmlhttp.send发送GET数据。 尝试将其添加到您的URL中,如xmlhttp.open("GET", "stylesheetBackupFile.php?q=" + str, true)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM