伙计们,我在这里想要实现的是,我假设有5个按钮(具有不同的选项,使用jquery依次显示一个按钮,并使用ajax发送数据)。

<div id="div1">
<button value="1" class="div1button">1</button>
<button value="2" class="div1button">2</button>
<button value="3" class="div1button">3</button>
<button value="4" class="div1button">4</button>
</div>
<div id="div2">
<button value="a" class="div2button">a</button>
<button value="b" class="div2button">b</button>
<button value="c" class="div2button">c</button>
<button value="d" class="div2button">d</button>
</div>


现在,当用户单击div1上的任一按钮时,div 2隐藏。... div2被显示,使用jquery传递被单击的按钮的值,并使用ajax执行sql查询。
现在执行查询的PHP包含

$_GET['valDiv1']
$_GET['valDiv2']


php检查val1的定义位置或不定义的位置,反之亦然,在获得div 2的val之后...问题在这里。

我大约有5个div,现在我需要检查所有div的值是否存在或只有1或2 ..等等....如何解决这个问题?
要检查这一点,我必须实现很多
喜欢 ::
如果定义了div1 ...执行此操作
如果定义了div1和div2 ...
如果定义了div1和div2以及div3 ...
如果定义了div2,div3和div5

这就是我遇到的问题。

我是一个初学者,请帮忙,有没有更好的方法来实现我想要的?

解决了

感谢@Igor

$selected = array('val1' => null, 'val2' => null, ...);
$selected['val1'] = $_GET['valDiv1'];
$selected['val2'] = $_GET['valDiv2'];
foreach($elements as $val => $key) {
    if($val == 'val1' && $key == 'any') {
        $sql = "SELECT * FROM details";
    } else {
    if($key != null) {
            if($key != 'any') {
                if($i>0) {
                $sql .= " AND $val='$key'";
                } else {
                $sql = "SELECT * FROM details WHERE $val='$key'";
                $i++;
                }
            }
        }
    }
}

最佳答案

我相信有很多方法可以对其进行优化。其中一种可能是将所有选择不存储在单独的变量中,而是存储在数组中,例如:

$selected = array('val1' => null, 'val2' => null, ...);
$selected['val1'] = $_GET['valDiv1'];
$selected['val2'] = $_GET['valDiv2'];
...


当您检查时可以做

if (array_search(null, $selected) === false) {
   ...
}

关于php - PHP逻辑是否使用条件或多态,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36820876/

10-10 01:38
查看更多