我正在尝试编写一个程序,其基本思想是我要求用户在textarea中输入,然后将文本存储到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语法。
由于
答案 0 :(得分:1)
检查以下内容:
无论如何,当某些东西不起作用并且你想知道是什么导致了恐怖时,将error_reporting(-1);
放在你的php的开头 - 它将输出任何错误或警告,包括fopen()所播放的错误或警告。
此外,您可能需要在分配后立即检查变量是否已正确提交:echo $comment
。
答案 1 :(得分:0)
这样的事可能有用。
您可能希望对所输入的值以及所有值进行更多操作,但这基本上可以满足您的要求。
您还需要确保您拥有正在尝试写入的文件的正确路径,并且该文件具有允许其写入的正确权限:
<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>
此外,由于您要返回同一页面,因此您可能需要提供某种消息,让该人知道他们已成功将某些内容输入您的地址簿。