为了账号安全,请及时绑定邮箱和手机立即绑定

使用JavaScript在服务器上保存文本文件

使用JavaScript在服务器上保存文本文件

是否可以使用JavaScript / jQuery将文本保存到新的文本文件而不使用PHP?我试图保存的文本可能包含HTML实体,JS,HTML,CSS和PHP脚本,我不想逃避或使用urlencode!如果它只能用PHP实现,我如何在不编码的情况下将文本传递给PHP?
查看完整描述

2 回答

?
喵喵时光机

TA贡献1846条经验 获得超7个赞

您必须有一个服务器端脚本来处理您的请求,它不能使用javascript完成。


要发送没有URIencoding或转义特殊字符的原始数据到php并将其保存为新txt文件,您可以使用post方法发送ajax请求,FormData如:


JS:


var data = new FormData();

data.append("data" , "the_text_you_want_to_save");

var xhr = (window.XMLHttpRequest) ? new XMLHttpRequest() : new activeXObject("Microsoft.XMLHTTP");

xhr.open( 'post', '/path/to/php', true );

xhr.send(data);

PHP:


if(!empty($_POST['data'])){

$data = $_POST['data'];

$fname = mktime() . ".txt";//generates random name


$file = fopen("upload/" .$fname, 'w');//creates new file

fwrite($file, $data);

fclose($file);

}

编辑:


正如Florian在下面提到的,XHR回退不是必需的,因为FormData旧浏览器不支持(formdata浏览器兼容性),因此您可以将XHR变量声明为:


var xhr = new XMLHttpRequest();

另请注意,这仅适用于支持FormDataIE +10等浏览器。


查看完整回答
反对 回复 2019-09-02
  • 2 回答
  • 0 关注
  • 2225 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信