我是PHP的新手,请原谅我!我已经完成了以下代码来显示两个不同的按钮,具体取决于文件vars.php中的$ status是否设置为1或0。到现在为止还挺好。
问题:我现在尝试创建一个非常简单的页面,其中包含两个选项字段,用于在vars.php中设置$ status。我希望脚本读取$ status的值,并选择相应的选项框,并有一个提交按钮,保存1或0到$ status。
这听起来很简单,但我无法让它工作..我不想使用数据库,文件可以是txt,xml或其他。请有人帮帮我!
以下是仅检查状态值1的IF脚本。
<?php include 'vars.php'; ?>
<?php if ($status == "1") { ?>
<a class="button" href="pageA.php">Read more</a>
<?php } else { ?>
<a class="button" href="pageB.php">Read more</a>
<?php } ?>
我尝试创建的是一个带有两个选项的小形式,我可以在$和0之间交换$ status值(表单选项预先选择$ status具有的值)。当我按下更新时,它应该覆盖vars.php中的$ status值。
答案 0 :(得分:0)
我会使用JSON。
vars.json:
{
"status": 1
}
然后在你的PHP上:
<?php
$json = json_decode(file_get_contents("vars.json"));
$href = ($json->status) ? "pageA.php" : "pageB.php";
?>
<a class="button" href="<?= $href ?>">Read more</a>
更新:如果你想让表格设置这些变量而不必手动修改JSON数据,那么创建另一个文件,调用它你想要的任何东西,我们会说form.php并把它放在:
<?php
$json = json_decode(file_get_contents("vars.json"));
if (isset($_POST['status'])) {
$json->status = (int)$_POST['status'];
file_put_contents('vars.json', json_encode($json));
}
?>
<form method="post">
<label>Status</label>
<select name="status">
<option value="1" <?= ($json->status) ? "selected" : "" ?>>TRUE</option>
<option value="0" <?= (!$json->status) ? "selected" : "" ?>>FALSE</option>
</select>
<input type="submit"/>
</form>