foreach循环数组sql查询

时间:2016-05-26 11:46:58

标签: php mysql arrays

我正在尝试在值!= 0时从我的数据库中选择值,但我得到的只是一个空数组。

这里我有一个包含数据库中所有名字的数组。

$array  = ['helm' , 'weapon', 'amulet', 'body', 'legs', "boots", 'shield', 'gloves', 'cape'];

然后我将数组放在foreach循环中,并将_name_value放在名称后面(在数据库中helm_name = blabla _helm value = 10

如果文字放在我的query中,我尝试选择name table (for example helm_name)和value table (for example helm_value)

的单词后面。
foreach($array as $array_item){
    $array_item_name = $array_item.'_name';
    $array_item_value = $array_item.'_value';

    $sql = $db->prepare("SELECT ".$array_item_name." FROM player WHERE naam = :naam AND ".$array_item_value." != 0");
    $sql->execute(array(":naam" => $naam));
    $fetch = $sql->fetchAll(PDO::FETCH_ASSOC);
}

但是当我运行它时它返回的是Array ( )我做错了什么?

1 个答案:

答案 0 :(得分:0)

请检查数据库错误值,还应首先创建sql字符串并输出,以便您可以手动运行生成的sql语句。