我有一个isset/get数组,如果从以前的脚本发布,它将使用vars$state、$cat和$sub执行脚本
我的问题是:如何只允许isset($在mysql数据库中获取条目,并在所有其他不在mysql数据库中的条目上抛出错误???
下面是现有脚本的一部分,它工作得很好,但是我已经展示了它作为示例,以便尝试理解如何忽略不在我的数据库中的字符串。当前允许传递任何字符串的位置。

    if
    index.php?state=Washington
        is changed to
    index.php?state=Hempville

在我的最后一页,脚本仍然将Hempville作为一个新实例传递给我。
我不完全是n3wb,所以谢谢你的帮助。
例子
$self = mysql_escape_string($_SERVER['PHP_SELF']);
$state = mysql_escape_string($_GET['state']);
$cat = mysql_escape_string($_GET['cat']);
$sub = mysql_escape_string($_GET['sub']);

而且,isset/U GET程序是:
if (isset($_GET['state'], $_GET['cat'], $_GET['sub'])) {
echo "<h3>$state</h3>";

// Breadcrumb
echo "<a href=\"./\">HOME</a> >> <a href=\"index.php?state=$state\">$state</a> >> <a href=\"#\">$cat</a> >> <a href=\"index3.php?cat=$catup&sub=$sub&state=$state\">$sub</a>";

最佳答案

如果我理解正确,您试图只允许数据库中已存在的状态为有效字符串?
可以这样做的一种方法是对状态进行查找(选择),以确保它在数据库中。
例子:
(比苏多)

SELECT count(*) FROM table WHERE state='Washington';
if (count > 0) {
    // washington is a valid input
    ...
}

关于php - ISSET GET/如何忽略不在数据库中的字符串条目,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13809660/

10-14 19:51