我有一个表单,用户可以将其技能插入到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'"
答案 0 :(得分:0)
使用相反。你可以逃脱
SELECT name,jobtitle FROM mytable WHERE jobtitle LIKE "%painting%";
它将选择“绘画”在场中的所有内容。 %是通配符。您必须使用PHP字符串连接稍微重写它以包含变量,但这应该给您一个良好的开端,对吧?
如果您添加更多选项并具有(绘画,绘图和着色)或(着色,绘画和绘图),这将适用于您。它将返回一个匹配,因为'painting'在两个字段中。