我正在为我所属的组织构建一个数据库服务器,其中一个选项是他们需要能够更改名称列表。此列表位于webroot中的txt文件中。
我已经将txt文件内容加载到html页面的文本区域中,现在我需要做的是将文本区域内容保存到同一文件中,以防我们需要更新或更改名称。
我已经尝试过了:
<textarea id="toroq" style="width: 100%; height: 200px;"><?php include("lista_toroq.txt") ?></textarea>
<input id="save_toroq" type="button" value="Save" onclick="WriteToFile();"/>
function WriteToFile()
{
var fso = new ActiveXObject("Scripting.FileSystemObject");
var text=document.getElementById("toroq").innerText;
//var fileName=document.getElementById("TextArea2").innerText;
var s = fso.CreateTextFile("lista_toroq.txt", true);
s.WriteLine(text);
s.WriteLine('***********************');
s.Close();
}
问题是它没有保存文件
发布于 2019-08-13 19:30:13
在没有运行某种形式的代码的情况下,JavaScript无法直接编辑或更改存储在web服务器上的文件。
使用类似这样的东西:
<?php
if ($_POST["text"]) {
file_put_contents("file.txt", $_POST["text"]);
}
?>
上面的代码在设置了$_POST["text"]
时运行。
将HTML表单更改为如下所示:
<html>
<body>
<form method="POST">
<textarea name="text tyle="width: 100%; height: 200px;"></textarea>
<input type="submit" value="submit" />
</form>
</body>
</html>
您可以将这两段代码存储在一个PHP文件中。结果将如下所示:
<?php
if (isset($_POST["text"])) {
$filename = "lista_toroq.txt";
$fileContent = file_get_contents ($filename);
$separator = "***********************";
$new_content = $_POST["text"].$separator.$fileContent
file_put_contents($filename, $new_content);
echo "Text added to file";
}
?>
<html>
<body>
<form method="POST">
<textarea name="text" tyle="width: 100%; height: 200px;"></textarea>
<input type="submit" value="submit" />
</form>
</body>
</html>
发布于 2019-08-13 21:14:51
你不能直接从javascript写代码。你必须使用PHP来编写。您可以使用file_get_contents
获取文件内容,也可以使用file_get_contents
进行写入。你可以用HTML表单做一些类似下面的事情。
<?php
if (isset($_POST["text"])) {
$filename = "lista_toroq.txt";
$fileContent = file_get_contents ($filename);
$separator = "***********************";
$new_content = $_POST["text"].$separator.$fileContent
file_put_contents($filename, $new_content);
echo "Text added to file";
}
?>
https://stackoverflow.com/questions/57476639
复制相似问题