2017-10-10 140 views
0

我想在我的网页中创建一个标记函数,并且我正在使用一组标记来查询数据库。MySQL查询和数组

array[tag1, tag2, tag3]; 

的标签在字段中创建

什么,我试图存档是一样的东西

$query = "SELECT * FROM TABLE WHERE `Tags` = '$tag1' AND '$tag2' AND '$tag3'"; 

除非数组,因此

$query = "SELECT * FROM TABLE WHERE `Tags` = $array[]"; 

感谢

$tag = $_POST['tag']; 

    $query = "SELECT * FROM ComicStripTags WHERE `Tag` = '$tag'"; 
    $result = mysqli_query($link, $query); 
    while ($row = mysqli_fetch_array($result)){ 
     $ID[] = $row['ImageID']; 
     print_r ($ID); 
    } 

BTW我想用$ ID [],在另一个查询中使用

+0

什么样的价值观是否你表的标签栏包含?你能列举一个例子吗?它每行都有一个以逗号分隔的标签列表吗?或者每行只有一个标签? – DeadLock

+1

你的SQL查询中的AND子句可能不会做你认为他们做的事。你能编辑你的问题,包括你正在查询的表的结构,你的标签数组的一些示例值,以及你希望从表中获得这些标签的几个值的结果吗? – ymbirtt

+0

我不知道为什么,但当我print_r $ tag数组堆栈的值数组([0] => 18)数组([0] => 18 [1] => 19) –

回答

0

尝试使用爆转换数组字符串,并用“IN”操作符,而不是平等的:

$query = "SELECT * FROM TABLE WHERE `Tags` in (". implode(", ",$array) .")";