我正在尝试创建一个搜索功能,用户可以通过选择他们感兴趣的多种音乐风格(通过复选框)找到事件列表。每个事件都可以附加多种音乐风格,如果其中一个搜索与事件匹配的音乐风格 - 然后它应该出现。
这就是我卡住的地方,因为每个事件都有多种音乐风格,它们必须存储在不同的表中。
一张表events_music_styles
包含event_ID和music_style_ID
,第二张表包含music_styles
不同语言中这些音乐风格的名称。
这就是我在 MySql 中加入它们的方式,当我想显示所有事件及其相应的音乐风格时,它可以很好地工作。
SELECT
events.ID,
events.EVENT_NAME,
GROUP_CONCAT(music_styles.MUSIC_STYLE_NAME) AS MUSIC_STYLE_NAME
FROM events
INNER JOIN events_music_styles
ON events.ID = events_music_styles.event_id
INNER JOIN music_styles
ON events_music_styles.music_style_id = music_styles.id
GROUP BY events.ID
但是,当我提交搜索查询时,数据变量如下所示:var MusicStyles = 1,2,3,5,20
.... 这些数字中的每一个都应该是events_music_styles
.
我将如何拆分这些数字并将它们发送到我的 php 文件,看起来像这样?
var MusicStyles = $("#music").val();
$.ajax({
type: "POST",
url: "do_search.php",
data: {
dataFromDate: FromDate,
dataToDate: ToDate,
dataMusicStyles: MusicStyles,
dataLocations: Locations,
dataFromPrice: FromPrice,
dataToPrice: ToPrice
}