我的脚本当前的作用:
- 抓取并清理 $_GET['id']
- 从表中提取该 ID 的所有预先存在的数据
- 显示填充有任何预先存在的数据的表单
- SUBMIT 发送表单数据到更新脚本,将所有数据添加到 TABLE
我希望我的脚本做什么:
- 抓取并清理 $_GET['id']
- 从表中提取所有可能的(id)(我知道该怎么做)
- 检查
$_GET['id']
位于数组 ID 中(我知道该怎么做) - 如果不是,则终止脚本,不显示表单,并回显错误消息(我不这样做)
- 如果是,则照常进行
- 从表中提取该 ID 的所有预先存在的数据
- 显示填充有任何预先存在的数据的表单
- SUBMIT 发送表单数据到更新脚本,将所有数据添加到 TABLE
当前脚本结构:
- PHP 代码
- html 表单
<?php _ ?>
插入所有值
我试图成为一个好小伙子并分离我的代码,并且基本上取得了成功。但这给我留下了一个问题,我的 html 表单是否显示 $_GET['id']
是否合法。
有人可以帮我设置一下吗 if (!in_array($id, $allIDs))
阻止表单显示并抛出错误?
除了使表单成为回显的 HEREDOC 之外,还有其他方法可以控制该 html 的显示吗?
伪代码是可以接受的。我没有费心发布我的实际代码,因为我认为这个问题不值得如此特殊。如果需要的话我可以...
最佳答案
pulls all possible (id)'s from TABLE, checks that $_GET['id'] is in array ID (this I know how to do)
这效率太低了。您应该询问数据库是否有 ID = $_GET['id'] 的行。
如果您展示当前如何执行数据库查询,我会向您展示如何执行此操作。
Other than making the form an echoed HEREDOC, is there a way to control the display of that html?
嗯,这有效,也许令人惊讶:
<?php
if ($should_show_form) {
?>
<form action="">
<input type="submit">
</form>
<?php
} else {
//do something else
}
?>
关于php - 仅当数据库中存在 GET var 时才加载编辑表单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1997537/