带选项的Mysql搜索查询

时间:2015-08-19 18:13:10

标签: php html mysql

我有一个表单,用户可以将其技能插入到mysql数据库中。 他们可以从三个选项中选择一个:绘画,绘画或绘画&绘制。然后将其中一个值插入数据库中的字段中。

我希望能够使用带有选择的表单来查询这些值。我已经很好地工作但是可能遇到了逻辑问题。

如果有人从搜索表单中选择绘画,则应返回绘画绘画& drawing 是值,但在我的表单中,它只返回等于 painting 的值。

同样,如果有人选择绘画&从搜索表单中绘制,只返回存在该精确值的行,但实际上这应返回存在绘图绘图的所有行。我怎样才能做到这一点? 一段搜索代码如下:

 <div class="form-group">
                          <label class="sr-only" for="job"></label>
                          <div class="input-group">
                            <select id="jobtitle" name="jobtitle" class="form-control">
                              <option value="" disabled selected>jobtitle</option>
                  <option value="drawing">
                    Drawing
                  </option>
                  <option value="painting">
                    Painting
                  </option>
   <option value="Drawing & Painting">Drawing & Painting</option>

                </select>

mysql查询是:

sql="select name, jobtitle from mytable where jobtitle='jobtitle'"

1 个答案:

答案 0 :(得分:0)

使用相反。你可以逃脱

SELECT name,jobtitle FROM mytable WHERE jobtitle LIKE "%painting%";

它将选择“绘画”在场中的所有内容。 %是通配符。您必须使用PHP字符串连接稍微重写它以包含变量,但这应该给您一个良好的开端,对吧?

如果您添加更多选项并具有(绘画,绘图和着色)或(着色,绘画和绘图),这将适用于您。它将返回一个匹配,因为'painting'在两个字段中。