3

我只是在 youtube 和其他网站的帮助下才开始学习代码,而且我遇到了 tino 的问题。这是我的代码:

<form action="" method="post" id="c">
  <label> Name: <br><input type="text" name="name" size="36"></label><br></br>
  <label> Message: <br><textarea cols="35" rows="5" name="mes"></textarea></label><br></br>
  <input type="submit" name="submit" value="Submit" class="texty" >
</form>

<?php
$post = $_POST["post"];
$name = $_POST["name"];
$text = $_POST["mes"];

if ($post) {

    #WRITE DOWN COMMENTS#

    $write = fopen("c.txt", "a+");
    fwrite($write, "<u><b> $name</b></u><br>$text<br></br>");
    fclose($write);

    #DISPLAY COMMENTS#

    $read = fopen("c.txt", "r+t");
    echo "All comments:<br>";

    while (!feof($read)) {   #this line does the error#
        echo fread($read, 1024);
    }
    fclose($read);
}
else{
    #DISPLAY COMMENTS#

    $read = fopen("c.txt", "r+t");
    echo "All comments:<br>";

    while (!feof($read)) {
        echo fread($read, 1024);
    }
    fclose($read);
}
?>

所以我有 2 个文件,一个是您输入评论并发布的文件,另一个是您输入的内容被粘贴并在页面上回显的另一个 .txt 文件。我认为文件的权限可能有问题,因为如果我只把它放到“r”,那么它不会给我错误,但它不会保存我尝试发布的内容......谢谢您阅读和回复。

4

2 回答 2

1

fopenFALSE如果文件无法打开,将返回一个布尔值 ( )。在尝试将$read其传递给feof. 然后弄清楚为什么你不能读取文件。

if ($read) {
    ...

您的文件可能由于权限而无法读取,或者如果文件本身无法找到。您指的是c.txt,但它是否在 PHP 所在的同一目录中?您可以通过getcwd.

echo getcwd()

此外,您的表单处理程序只有在具有值时才会进入写入分支$_POST['post'],但您的表单中没有使用该名称(至少在所示示例中没有)。

于 2015-08-15T21:56:53.940 回答
0

谢谢丹,问题出在提交命令中。一个是提交,另一个是发布,所以它不明白我在做什么。PS:抱歉回复晚了;_;

于 2015-09-10T14:47:24.760 回答