0

我有一个 html 页面 (database.html),其中包含一个可以通过 javascript 编辑的表。以下 PHP 脚本用于保存页面。

PHP 脚本保存 database.html 的更新版本并重定向到新版本(同一文件)。

问题是第二次按保存时它不起作用,只有第一次。

任何想法可能是什么问题?

HTML:

<!DOCTYPE html><head>
<title>Database</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<style type="text/css">
#textarea_database {
display:none;
}
</style>
<script src="js.js"></script>
</head>
<body>

<a id="a_save" href="#">Save</a>

<form id="form_database" method="post" action="save.php">
<textarea id="textarea_database" name="textarea_database"></textarea>
</form>

<div id="contenteditable" contenteditable="true">
Write something and press save...
</div>

</body>

JavaScript:

window.onload = function () {

    var a_save = document.getElementById('a_save'),
        form_database = document.getElementById('form_database'),
        textarea_database = document.getElementById('textarea_database');

    a_save.onclick = function () {
        textarea_database.value = document.documentElement.innerHTML;
        form_database.submit();
    }
}

PHP:

<?php

// the textarea contain all th html
$textarea_database =  $_POST["textarea_database"];

// add doctype since javascript document.documentElement.innerHTML dont get it
$textarea_database = '<!DOCTYPE html>' . $textarea_database;

// update the html database file
$open_database = fopen('database.html','w+');
fputs($open_database,$textarea_database);
fclose($open_database);


// redirect to the uppdated database (timestamp prevent browser cache)
$the_time = date('Y-m-d-H-i-s');
$url_and_time = "database.html?" . $the_time;
header("Location: $url_and_time ");
exit;

?>
4

0 回答 0