提交评论编辑在textarea然后保存
问题描述:
所以,我正在处理一个简短的脚本,需要用户的“错误报告”,并保存它。使用编辑按钮显示页面底部的注释以进行编辑。我想让那个按钮把用户带到另一个带有textarea的页面,他们的评论在这里是可编辑的,还有一个保存按钮来保存他们的报告。我不确定如何链接到用户上传的确切评论。
像这样: 提交评论编辑在textarea然后保存
这是我到目前为止有:
报告问题
<form method="POST" action="Bugs.php">
<p>Bug Name <input type="text" name="name" /><br />
Hardware Type <input type="text" name="hw" /><br />
OS <input type="text" name="os" /> <br />
Frequency of Occurence <input type="text" name="freq" /></p>
<p>Proposed Solutions<br />
<textarea name="sol" rows="6" cols="100"></textarea>
<input type="submit" name="submit" value="Create New Bug Report" /></p>
</form>
<?php
$Dir = "comments";
if (is_dir($Dir)) {
if (isset($_POST['submit'])) {
if (empty($_POST['name'])) {
$String = "Unknown Visitor";
}
else
$String = stripslashes($_POST['name']) . "|";
$String .= stripslashes($_POST['hw']) . "|";
$String .= stripslashes($_POST['os']) . "|";
$String .= stripslashes($_POST['freq']) . "|";
$String .= stripslashes($_POST['sol']);
$CurrentTime = microtime();
$TimeArray = explode(" ", $CurrentTime);
$TimeStamp = (float)$TimeArray[1] + (float)$TimeArray[0];
/* File name is " Comment.seconds.microseconds.txt" */
$SaveFileName = "$Dir/Comment.$TimeStamp.txt";
if (file_put_contents($SaveFileName, $String)>0)
echo "File \"" . htmlentities($SaveFileName) . "\" successfully saved.<br />\n";
else
echo "There was an error writing \"" . htmlentities($SaveFileName) . "\".<br />\n";
}
}
if (is_dir($Dir)) { //show submitted reports on page
$CommentFiles = scandir($Dir);
foreach ($CommentFiles as $FileName) {
if (($FileName != ".") && ($FileName != "..")) {
echo "From <strong>$FileName</strong><br />";
echo "<pre>\n";
$Comment = file_get_contents($Dir . "/" . $FileName);
echo $Comment . "<a href=edit.php>Edit</a>";
echo "</pre>";
echo "<hr />";
}
}
}
?>
答
你真的需要把所有这一切到一个数据库这将是更更轻松。
但是..当你的foreach该文件夹中的所有评论添加$ _GET变量,像这样的文件名:
echo $Comment . "<a href=edit.php?com_id=" . urlencode($Filename) . ">Edit</a>";
然后编辑部分,您可以拨打urldecode($ _ GET [“com_id” ])来访问文件名并编辑评论。
我认为你真的需要考虑你的代码结构,如果你不打算将数据插入到SQL服务器,你必须为每个错误报告分配一个id给你的文件,将这些ID保存在另一个文件中,以便您可以检测到它们,然后您可以使用该ID来完成您的工作,同时请记住,只有发送该错误报告的用户才能编辑它 – 2013-02-27 17:07:14
对不起, '新的PHP和非常多的学习过程中(我听说Gosselin不是最好的作者),一如既往,如果你有任何良好的资源来学习PHP我很乐意欣赏它。谢谢。 – 2013-02-27 17:14:56