创建/追加数据到web服务器文件


Creating/appending data to a web server file

首先,我是一个新手客户端只有HTML的人。我运行一个网站,其中有结果,需要每周上传。为了简化添加新行,我创建了一个文件,然后将其包含到主html文件中,如下所示(我们将其命名为results.htm):

<br><a href="R20150729.htm">27 Jul 2015</a>
<br><a href="R20150722.htm">22 Jul 2015</a>
-----
-----
<br><a href="R20150715.htm">15 Jul 2015</a>

每周我(或同事)都必须登录主机并手动编辑文件,在顶部添加额外的行。

(它是一个如此基本的文件,并使用iframe来嵌入代码的原因是,当文件中有很多HTML时,有些人发现很难找到正确的行并修改它。)

Ryyyymmdd.htm可以很容易地使用FTP上传,我现在试图避免登录和修改结果。htm

我想到的一种方法是创造今天的结果例:
<a href="R201508.03.htm">03 AUG 2015</a>

这可以通过本地PC上的文本编辑器轻松完成。然后它可以被上传,例如,recent.txt然后,我需要将recent.txt添加到results.htm的前面。我猜将results.htm附加到recent.txt然后将results.htm重命名为resultsold.htm并将recent.txt(现在包含所有行)重命名为results.htm会给我

<br><a href="R20150803.htm">03 Aug 2015</a>
<br><a href="R20150729.htm">27 Jul 2015</a>
<br><a href="R20150722.htm">22 Jul 2015</a>
-----
-----
<br><a href="R20150715.htm">15 Jul 2015</a>

我想避免的是下载results.htm,在开头添加一行然后上传。

的想法或一些代码将是感激。我使用Filezilla作为我的FTP关键是要尝试让一切都自动化,这样点击一个按钮就可以完成所有工作,避免登录到web服务器并手动修改代码。如果它可以通过在FTP程序中搞乱来完成,或者如果真的需要一些服务器端代码(我以前没有这样做过)。

谢谢。

将此文件保存为"add_new_result.php",与"results.htm"保存在同一文件夹中。然后在浏览器中导航到"www.domain.com/add_new_result.php"(如果它在子文件夹中,则必须导航到正确的位置)。然后试着输入并点击"添加新结果"按钮。

<?php
if(isset($_POST['field1'])) {
    $data = $_POST['field1'] . "'n";
    $ret = file_put_contents('results.htm', $data, FILE_APPEND | LOCK_EX);
    if($ret === false) {
        die('There was an error writing this file');
    }
    else {
        echo "$ret bytes written to file";
    }
}
else {
?>
<html>
<head>
    <title>Add New Result</title>
</head>
<body>
<form action="add_new_result.php" method="POST">
    <input name="field1" type="text" style="min-width:300px;"/>
    <input type="submit" name="submit" value="Add New Result">
</form>
    <a href='data.txt'>Text file</a>
</body>
<? } ?>