我有两个问题,仅仅是为了逻辑:
我需要一个包含视频游戏的数据库(名称,封面,描述,平台,流派)
我如何才能使其具有多个值?
例如:辐射3是FPS / RPG,但是如果我仅查询FPS或仅查询RPG,我希望能够显示它。 或者只是有一个页面genre.php?genre = FPS显示所有FPS(使用FPS / RPG或FPS / MMO游戏)
查询LIKE
是否足够?
第二个问题:
我有一个带有不同复选框的表单,用于将其发送到PHP搜索脚本:
?search.php中Q =死+岛&安培; PC =上&安培; PS3 = ON&安培; Xbox360的= ON&安培;的Wii =上
如何创建SQL查询而不必为所有可能性编写它?知道有很多平台(NES,N64等)
示例(简化):
if(PC=on) = SQL search in platform PC
if(PC=on and PS3=on) = SQL search in platform PC and PS3
感谢您的帮助!
答案 0 :(得分:4)
第一个: 你可以有很多选择,
LIKE '%str%'
//如果最多2个值第二个:
创建一个查询字符串,[此示例在php中]
$sql="Select * from table_name where";
if($_Get['pc']=="on"){
$sql+=" platform='pc' OR ";
}
if($_Get['ps3']=="on"){
$sql+=" platform='ps3' OR";
}
// and so on for as many conditions
// at last
$sql+=" 0; "; // This line is necessary because of use of 'OR' before
希望这有助于!!