1

我需要能够读取、显示、修改和保存位于 Windows 服务器上的现有 .txt 文件的内容。我已经可以进行“读取”和“显示”位,但不能修改和保存文件。

例如 :

文本文件位于此处:www.myserver.com/files/textfile.txt 文件内容为:one_whole_line_like_this

我当然可以通过 FTP 客户端来完成,但我需要对最终用户来说更优雅、更容易的东西,所以我希望用户能够访问(受密码保护的)网页并让它显示文本文件的当前内容。 txt (我可以做到这里),然后有一个文本框来输入新内容和一个“提交”按钮。然后提交按钮将文本框的新内容写入文件,保留其原始名称 (textfile.txt)。

目前,我一直在思考哪种方法是最好的方法,更不用说实施它了。

我非常感谢有关最简单和最优雅的方式(对于用户)的建议。一些示例代码也将不胜感激。

4

1 回答 1

2

我在这个答案中假设您有一个功能 Web 服务器。否则,我建议安装Apache。如果您需要帮助设置它,网上有很多说明。Apache 本身可以创建受密码保护的网页。但是,您需要一个 SSL 扩展来实际加密信息。您还需要PHP,您将使用它在服务器上保存新文件。您也可以将所有这些作为一体式软件包获得,例如WAMP

如果或当您有一个正常运行的 Web 服务器时,您将在实际网页中使用HTMLCSSJavascriptPHP的混合体。

一般 id 是您有一个使用该网页的客户端。在客户端的网页上,您将拥有一个将数据发送回您的服务器的脚本。在服务器上,您将有另一个脚本接收数据,然后将其存储到您想要的文件中。

首先,您需要设计客户将要访问的页面。你可以用HTMLCSS做到这一点。您将使用HTML添加文本框和其他内容,并使用CSS更改其在页面上的外观。

一个 HTML 示例:

<html>
<body>
    <textArea>My first html page!</textArea>
    <button>Submit</button>
</body>
</html>

一个 CSS 示例:

body { background-color: black; }
textArea { width:50%; }

然后,您将在浏览器上使用Javascript收集文本框中的信息。然后,您将该请求发送到服务器上的PHP脚本。在PHP脚本中,您将数据保存到文件请求中。这是一个使用JavascriptJquery - Javascript 扩展的粗略示例:

<script>

/*
    The $( "#submitButton" ) is executed every time the user clicks the div that is
    associated with it.

    The text in the textbox is returned from $( "#submitBox" ).text( );

    in $.post, here's what's happening

    $.post( ( script name ), ( data to be sent to script ) )

    So when your executing $.post( "php_file.php", new_text:$("#submitBox").text() )

    You're starting a script called php_file.php and sending the text in text box to a 
    variable called new_text.
*/
$( "#submitButton ).click( function( ){

    $.post( "php_file.php", new_text : $( "#submitBox" ).text( ) );

});

</script>

PHP 脚本

<?php
file_put_contents( "filename.txt", $_POST[ "new_text" ] );
?>

由于这些只是代码片段,我建议您阅读 HTML、CSS、Javascript 和 PHP。您会在W3schools(以及其他网站)上找到很多信息。我建议首先关注 HTML,在您的家用计算机上使用它(即在您的计算机上创建一个 .html 文本文件并在浏览器上打开它)。如果您在此过程中遇到问题,这是一个很好的网站,可以在其他所有方法都失败时发布您的问题。

于 2013-04-17T06:42:28.793 回答