您好我在我的网站上创建了一个页面,以便在我的数据库中找到任务。
我现在使用的方法,它的工作,但我必须每次都更新它。
$demande = "SELECT * FROM quest_quest WHERE id IN (584,585,586,587,589,599,601,617,608,615,616) LIMIT ".(($cPage-1)*$perPage).",$perPage";
相反,我想查询我的数据库并在我的查询中使用id
我有一个包含TagID和IDquest的表,我想查询以保存所有问题并在我的查询中使用它
示例:
$questsfind = mysql_query("SELECT * FROM `quest_statetag` WHERE idTag ='8'");
我希望有一个这样的变量(221,587,1155,1255,5585)
$demande = "SELECT * FROM quest_quest WHERE id IN ('".$questsfind."') LIMIT ".(($cPage-1)*$perPage).",$perPage";
nb:我的英语不是我的母语:S
答案 0 :(得分:2)
我不确定我是否理解这个问题,但我相信您希望在变量(来自查询)中保留一堆ID,然后从中创建另一个查询?
$first = mysql_query("SELECT * FROM quest_quest WHERE id IN (1,2,3,4)");
if( ! $first )
die('Something went wrong...');
$ids = array();
while( $row = mysql_fetch_assoc($first) ) {
$ids[] = $row['id'];
}
$query_ids = implode(',', $ids);
$second = mysql_query("SELECT * FROM quest_statetag WHERE idTag IN ($query_ids)");
希望有帮助...
答案 1 :(得分:1)
首先您必须将关联数组转换为字符串
$questsfinds = implode(',', $questsfind);
那你可以试试FIND_IN_SET方法
SELECT * FROM quest_quest WHERE FIND_IN_SET(id,'$questsfinds');