1

我正在尝试为我的网站创建一个评论框。我可以使用 HTML 和 CSS 制作背景和其他项目,但我希望人们能够留下评论、问题或疑虑。

我研究了很多方法来制作评论框,如何将其写入文件,如何显示评论以及如何更新文件,但因为我个人不知道 PHP 或 JavaScript,所以我不知道不知道该怎么做。我查看了其他人的编码并设法提出了一些类似的东西:

这是表单,它是一个 HTML:

<div class="commentf">
    <table>
        <tbody>
             <FORM action="submit.html" method="post">
                <tr>
                    <td><LABEL for="name">Name: </LABEL>
                              <INPUT type="text" id="name"></td>
                </tr>
                <tr>
                    <td><LABEL for="email">E-Mail: </LABEL>
                               <INPUT type="text" id="email"></td>
                </tr>
                <tr>
                    <td><LABEL for="subject">Subject: </LABEL>
                              <INPUT type="text" id="subject"></td>
                </tr>
                <tr>
                    <td><LABEL for="comment">Text: </LABEL>
                              <TEXTAREA type="text" id="comment">Comment:</TEXTAREA></td>
                </tr>
                <tr>
                    <td><INPUT type="submit" value="Submit"> <INPUT type="reset"></td>
                </tr>
            </FORM>
        </tbody>
    </table>
</div>

这是“处理”的PHP文件(保存为HTML,由于某种原因,当我尝试将其作为PHP文件打开时,它会打开一个另存为框而不是运行PHP,所以我只是将其保存为HTML)资料:

<?php
        if(isset($_POST['name']) && isset($_POST['email'] && isset ($_POST['subject'] && isset ($_POST['comment'])))) {
        $data = $_POST['name'] . '-' . $_POST['email'] . '-' . $_POST['subject'] . '-' . $_POST['comment'] . "\n";
        $ret = file_put_contents('HAS.txt', $data, FILE_APPEND | LOCK_EX);
        if($ret === false) {
        die('There was an error writing this file');
    }
    else {
        echo "$ret bytes written to file";
    }
}
else {
   die('no post data to process');
}

最后,这是我第一次显示的 html 的一部分,以便显示评论。

    <div class="postcomment">
             <FORM>
                    <br>Name:</b> <?php echo $_POST['name']; ?> <INPUT type="text" id="name">
                    <br>E-Mail:</b> <?php echo $_POST['email']; ?> <INPUT type="text" id="email">
                    <br>Subject:</b> <?php echo $_POST['subject']; ?> <INPUT type="text" id="subject">
                    <br>Comment:</b> <?php echo $_POST['comment']; ?> <TEXTAREA type="text" id="comment"></TEXTAREA>
             </FORM>
        </div>

4

2 回答 2

1

如果您还没有找到答案,这里有一种为您的网站创建评论部分的简单 html 方法,它包含 php

<?php
if ($_POST){

$name = $_POST['name'];
$content = $_POST['commentContent'];
$handle = fopen("comments.html","a");
fwrite ($handle,"<b>" . $name . "</b></br>" . $content . "</br>");
fclose ($handle);}

?>

<html>
<body>

<form action="" method="POST">
Content: <textarea rows ="10" cols ="30" name="commentContent"></textarea></br>
Name: <input type = "text" name = "name"></br>
<input type = "submit" value = "post!"></br>
</form>

<?php include "comments.html"; ?>
</body>
</html>

只需在同一文件夹中创建一个名为 comments.html 的空白 html,如果还没有答案,希望有所帮助

于 2014-10-25T22:20:46.887 回答
0

目前,您正在使用输入的 id、textarea 标签从 $_POST 访问它的值。这是不可能的。您必须使用标签的名称属性从 $_POST 访问它的值。

<div class="postcomment">
 <FORM>
        <br>Name:</b> <?php echo $_POST['name']; ?> <INPUT type="text" name="name">
        <br>E-Mail:</b> <?php echo $_POST['email']; ?> <INPUT type="text" name="email">
        <br>Subject:</b> <?php echo $_POST['subject']; ?> <INPUT type="text" name="subject">
        <br>Comment:</b> <?php echo $_POST['comment']; ?> <TEXTAREA type="text" name="comment"></TEXTAREA>
 </FORM>

于 2016-05-17T02:17:39.070 回答