我正在尝试用JavaScript创建一个非常简单的评论部分。
这是表格:
<form>
<textarea cols="50" rows="10" placeholder="Leave your thoughts ..." id="theComment"></textarea><br/>
<input type="text" id="commenterName" placeholder="What's your name?"/>
<input type="button" value="Post Comment" name="postCommentButton" onclick="postComment();"/>
</form>
以下是JavaScript:
<script type="text/javascript">
function postComment()
{
var node = document.createElement("p");
var textComment = document.createTextNode(document.getElementById("theComment").value);
node.appendChild(textComment);
var element = document.getElementById("commentDisplaySection");
element.appendChild(node);
}
</script>
但是,只要页面重新加载,评论就会消失。如何使用JavaScript永久修改HTML文档?我必须使用PHP和MySQL吗?
答案 0 :(得分:1)
您可以使用JavaScript对网页进行永久性更改,前提是JavaScript正在向服务器进行AJAX调用,然后服务器端脚本会应用请求的更改。
答案 1 :(得分:1)
代表注释的数据流或位序列必须才能在某处记住(存储) - 以便您自己和其他查看注释的人可以调用和显示它们。
对DOM的更改只与DOM本身一样长。如果DOM死亡,则更改会死亡。并且,DOM一直 (页面加载/重新加载)。
那么,如果你不能存储在DOM中,你应该在哪里存储?嘿等等,你可以使用cookies或localStorage吗?也许你可以。等等,你实际上不能。
您的 Cookie位于您的浏览器中。只要您的浏览器让他们活着。此外,我无法直接看到您的cookie。所以饼干就出来了。 localStorage也是如此 - 它是您的本地人。
我们还能做些什么?如何在服务器上保存cookie?等等,这可能是它。是!就是这样!
想一想,互联网上100%的网站都这样做!它们将数据存储在一直可用的服务器上,供任何人访问。宾果!
所以,简而言之,是的,请使用php / mysql。
答案 2 :(得分:0)
好的,所以你可以制作MySQL表:
CREATE TABLE `values` (
`id` int(10) NOT NULL auto_increment,
`username` varchar(50) NOT NULL default '',
`value` varchar(2000) NOT NULL default '',
PRIMARY KEY (`id`)
)
然后创建一个将连接到表的PHP脚本,记住mysql_real_escape_string。
然后你必须连接到你想要输出它的地方,并连接到同一个数据库和表,然后获取用户名的值。记得使用htmlspecialchars。这就是我得到的。如果你想使用ajax,你可以在这里做。