使用PHP和MYsql。我有两张桌子
我想要的是选择所有的‘标签’从表‘标签’,这是标签在同一字符串的‘标签’的表‘条目’,有一个给定的标签(变量$tag)。但是不知道,我只是尝试从表'entry‘中选择标记,其中的字符串在’$tag‘中包含指定的标记(变量.My),当前的代码是
$count=0;
$sql="SELECT tags FROM entry WHERE tag LIKE '%$tag%'";
$result = mysql_query($sql);
while($data=mysql_fetch_array($result)){
if(mysql_num_rows($result)!=0){
$tags1=explode(',',$data['tags']);
for($loop=0; $loop<=count($tags1)-1; $loop++){
if(!in_array($tags1[$loop], $tags2)){
$count+=1;
$tags2[$count]=$tags1[$loop];
}
}
}
}
发布于 2011-07-05 03:08:00
将其作为一条语句执行的超级低效SQL注入攻击方法如下:
$sql="SELECT tags FROM entry WHERE 1=1 ";
然后在运行查询之前将每个标记添加到查询中:
$sql.="AND tag LIKE '" . $tags1[$loop] . "' ";
如果您想匹配任何标记,而不是所有标记,请将AND
替换为OR
。
不过,我确实建议对标记进行规范化,并考虑不以这种方式构建SQL查询。
https://stackoverflow.com/questions/6577583
复制相似问题