首先我们猜想下下面的代码会输出什么?
switch
(0) {
case
'a1'
:
echo
1;
case
'a2'
:
echo
2;
case
'a3'
:
echo
3;
break
;
}
打眼一看;如果你认为什么都不会输出;
那么这篇文章你就看值了;
事实上着段代码会输出123;
因为在比较的时候;'a1'、'a2'、'a3'转成整型的结果都是0;
所以;需要特别注意的就是;switch使用的是==比较;而不是===;
因此;在使用的过程中;一定要保持类型的统一;
解决这个问题的办法就是在传参的时候转为字符串string型;
查询上一篇文章和下一篇文章
肯定会有童鞋是说,这简单啊id+1和id-1不就OK了;sql无非如下:
SELECT
*
FROM
bjy_article
WHERE
id=10-1; #上一篇
SELECT
*
FROM
bjy_article
WHERE
id=10+1; #下一篇
但是作为严谨的程序猿,认真思考这个不算方法的方法时候立马发现2个严重的问题,用limit不就可以了;
SELECT
*
FROM
bjy_article
WHERE
id<10 LIMIT 1; #上一篇
SELECT
*
FROM
bjy_article
WHERE
id>10 LIMIT 1; #下一篇
这就完了吗?NO;如果用这sql取;下一篇没问题了;但是上一篇会一直是第一篇文章!
这时来个倒序即可(PS因为你没有排序,默认是asc排序的,所以要desc排序上一篇,下一篇不能用desc排序,用asc排序,默认就是asc的,我们就不需要order by了)
SELECT
*
FROM
bjy_article
WHERE
id<10
ORDER
BY
id
DESC
LIMIT 1; #上一篇
判断是否选中状态,如果选中就让它取消选中,如果没选中就全部选中
<input type="checkbox" value="quanxuan" id="quanxuan"/>
<input type="checkbox" name="selectid[]" value="1">
<input type="checkbox" name="selectid[]" value="2">
<input type="checkbox" name="selectid[]" value="3">
$("#quanxuan").click(function(){
if($(this).is(":checked")){
$('#selectall').find('input[type="checkbox"]').prop("checked",true);
}else{
$('#selectall').find('input[type="checkbox"]').prop("checked",false);
}
});
$("#quanxuan").click(function(){
if($(this).is(":checked")){
$('#selectall').find('input[type="checkbox"]').prop("checked",true);
}else{
$('#selectall').find('input[type="checkbox"]').prop("checked",false);
}
});