我有一个PHP页面,它从服务器读取文本文件,并根据该文件的内容在页面上加载一些内容。然后,当用户单击提交按钮时,内容将重写为文本文件,并重新加载页面。
但是,现在,根据我刚刚选择的内容,加载到页面的内容不正确。但是,如果我点击F5并重新加载页面,那么页面会加载所有正确的内容,就像我预期的那样。这就像页面必须第二次刷新,因为第一次重写文本文件。
是否有更正此问题,以便根据用户选择的内容正确加载页面内容,然后将其重写为文本文件?
我正在使用以下内容编写文件,位于我的php代码的最底部:
echo "<form action='' method='post' enctype='multipart/form-data' name='saveChoices' id='saveChoices'>";
$userChoiceListWritable = fopen($userChoicesFile, 'w') or die("Couldn't open user's choice list file for writing.");
if (array_key_exists('save', $_POST))
{
if(!empty($_POST['choiceCheckGroup']))
{
foreach($_POST['choiceCheckGroup'] as $check)
{
fwrite($userChoiceListWritable , $check."\n");
}
}
fclose($userChoiceListWritable);
}
答案 0 :(得分:0)
你应该在输出文件内容之前写文件,而不是之后。将文件编写代码放在脚本的顶部,因为它只在一个文件中。