我想在每个搜索字词之间用逗号搜索标记。如果表行中存在一个或多个术语,则结果将被过帐。但我不能用每个术语之间的逗号处理它。是否有捷径可寻?如果您对我的问题有任何建议,请回复。
//HTML
<form method="POST" action="actionpage.php">
<input type="text" name="searchterm" value="**To be submitted with a comma between every tag name**" />
<input type="submit" value="Submit">
</form>
//PHP
$tagname = [];
$tagname[] = $_POST['searchterm'].",";
$tagname[] = $_POST['searchterm'].",";
$tagname[] = $_POST['searchterm'].",";
// MySQL
query = "SELECT * FROM list where tags = $tagname";
// Database table list
id----------tagname
1 tag1,
1 tag2,
1 tag5,
2 tag2,
2 tag3,
3 tag1,
4 tag4,
4 tag1, etc...
答案 0 :(得分:0)
我希望你所寻找的是'爆炸'和'内爆'。
//从searchterm获取标签数组 $ tagname = explode(',',$ _POST ['searchterm']);
我没有测试以下内容,但它会让你知道你需要做什么。查询将失败不是提供的标签。
$ query =“SELECT * FROM list where tags in('”。implode('\',\'',$ tagname)。“')”;