初学者帮助:使用PHP创建和存储文本


Beginner Help: Creating and Storing Text Using PHP

我正在尝试编写一个程序,其基本思想是我要求用户在文本区输入,然后将文本存储到word文件中。下面是我要使用的代码:

<html>
<head>
<title>Simple Guestbook</title>
</head>
<body>
<h1>Simple Guestbook Comment Creator</h1>
<br>
<form method = "post"
        action = "mysite.php">
    <textarea name = "text"
        rows = "10"
        cols = "20">Write Here</textarea>
<input type = "submit"
        value = "Submit Comment">
</form>
<?
    if($_POST['text'] !== NULL){
        $comment = $_POST['text'];

    $file = fopen("texttest.txt", "a");
    fputs($file, "<br>'n$comment");
    fclose($file);  
    }       
?>
</body> 
</html>

我似乎不能使这个正常工作。我还在考虑以某种方式使表单操作存储文本,然后重新加载网站,但我还没有得到工作(原始文件是mysite.php,所以动作只是重新加载页面)。

如果有人有更好的算法或不同的语法使用的想法,请告诉我,因为我刚刚开始学习基本的PHP语法。

谢谢

检查以下内容:

  1. php是否有权限写入该目录下的文件?
  2. 是php文件称为"myfile.php"?

无论如何,当某些东西不工作并且你想知道是什么导致错误时,将error_reporting(-1);放在php的开头-它将输出任何错误或警告,包括由fopen()生成的错误或警告。

此外,您可能想要检查变量是否已正确提交:echo $comment在您分配它之后。

这样做可能会起作用。

你可能想对它们输入的值做更多的处理,但这基本上会完成你所要求的。

你还需要确保你有正确的文件路径,你试图写入,该文件有正确的权限,允许它被写入:

<html>
<head>
    <title>Simple Guestbook</title>
</head>
<body>
    <h1>Simple Guestbook Comment Creator</h1><br>
    <?php
        if (isset($_POST['submit'])) {
            if (strlen(trim($_POST['comment']))) {
                $file = fopen("texttest.txt", "a");
                fputs($file, "$_POST['comment'])'n");
                fclose($file);  
            }
        } else {
    ?>
    <form method = "post" action = "<?php echo($_SERVER['PHP_SELF']); ?>">
        <label>Leave your comment
        <textarea name="comment" rows="10" cols="20"></textarea>
        </label>
        <input type="submit" name="submit" value="Submit Comment" />
    </form>
    <?php
        }
    ?>
</body> 

此外,由于您要返回同一页面,您可能需要放置某种消息,让该人知道他们成功地在您的地址簿中输入了一些内容。