小编Joe*_*oel的帖子

SQL和PHP - 哪个更快mysql_num_rows()或'select count()'?

我只是想知道哪种方法最有效,如果我真的只想获得表中的行数.

$res = mysql_query("SELECT count(*) as `number` FROM `table1`");
$count = mysql_fetch_result($res,0,'number');
Run Code Online (Sandbox Code Playgroud)

要么

$res = mysql_query("SELECT `ID` FROM `table1`");
$count = mysql_num_rows($res);
Run Code Online (Sandbox Code Playgroud)

有人做过任何体面的测试吗?

php sql performance

30
推荐指数
3
解决办法
1万
查看次数

正则表达式可选组?

我似乎把自己与preg_match正则表达式混淆了,我正在做,所以新鲜的眼睛和帮助将不胜感激.

我目前的正则表达式如下:

/<!--menu:start:\(([0-9])\,([0-9])\)-->(.*?)<!--menu:end-->/se
Run Code Online (Sandbox Code Playgroud)

我想要输入数字和冒号,例如:(1,4)可选,所以它匹配:

<!--menu:start--><!--menu:end-->
Run Code Online (Sandbox Code Playgroud)

要么

<!--menu:start:(0,3)--><!--menu:end-->
Run Code Online (Sandbox Code Playgroud)

php regex preg-replace preg-match

15
推荐指数
3
解决办法
2万
查看次数

是否可以选择$(this)并在jQuery中使用选择器

我想知道在运行函数之前我是否可以使用$(this)以及类选择器.

所以而不是做;

$(this).toggleClass('open');
$('.closed').toggleClass('open');
Run Code Online (Sandbox Code Playgroud)

做更像的事情;

$(this, '.closed').toggleClass('open');
Run Code Online (Sandbox Code Playgroud)

实际上,上面将在'.closed'的上下文中选择'this'

问候,

javascript jquery jquery-selectors

12
推荐指数
1
解决办法
195
查看次数

MySQL:更新将字段设置为0的所有行,但将一行的字段设置为1

是否有一种有效的方法可以将选择的行字段更新为0,但是根据ID将其中一行设置为1.

基本上,我在数据库中有多个对象,并且我想在哪个"inuse"之间切换,因此查询将其中一行(按id)设置为inuse = 1,其他行设置为inuse = 0.

谢谢 :)

php mysql

11
推荐指数
2
解决办法
1万
查看次数

除非开发人员工具打开,否则IE8 Javascript不会运行?

出于某种原因,在IE8中,除非我在打开Developer Tools的情况下重新加载页面,否则javascript不会运行.我关闭开发人员工具并重新加载页面,javascript停止工作.我没有收到任何错误报告(不管它们是否有任何用处).

还有其他人有这个问题吗?

javascript internet-explorer-8 ie-developer-tools

11
推荐指数
1
解决办法
3115
查看次数

Javascript CustomEvent详细信息未通过

我正在尝试创建自定义javascript事件.该事件正常工作并触发,但我传递的'detail'对象不可用.

这是我用来创建和发送事件的代码;

var double_tap = new CustomEvent("doubleTap", {
    detail: {
        hello: 'world'  
    },
    bubbles: true,
    cancelable: true
});

this.dispatchEvent(double_tap);
Run Code Online (Sandbox Code Playgroud)

然后我使用jquery向主体添加一个事件监听器;

$('body').on('doubleTap', function( e ) { 
    console.log(e);
});
Run Code Online (Sandbox Code Playgroud)

它确实触发,并且控制台日志发生,但不幸的是,日志只输出事件详细信息,包括气泡和可取消属性,但从不输出'detail'对象,因此无法访问信息.

这是一个jsbin例子,我在body的click事件上创建事件,这样你就可以看到控制台; http://jsbin.com/looseroots/6

我想能够在事件被触发时从'detail'对象获取数据.我究竟做错了什么?我在Chrome中测试了这个,在iOS上测试了Safari

javascript jquery javascript-events

9
推荐指数
2
解决办法
3455
查看次数

CSS邻近兄弟选择器 - IE8问题

我正在使用UL/LI结构创建菜单系统.我正在尝试将兄弟选择器用于悬停/显示子菜单.

我正在使用这个;

#MainMenu li.Sel ul li.HasSub a:hover+ul {
     display: block;
}
Run Code Online (Sandbox Code Playgroud)

UL结构将是这样的;

<ul id='MainMenu'>
    <li class='Sel'>
    <a href='#'>Click Me</a>
        <ul>
            <li class='HasSub'>
                <a href='#'>Hover Over Me</a>
                <ul>
                    <li>Link</li>
                    <li>Link</li>
                </ul>
            </li>
        </ul>
    </li>
</ul>
Run Code Online (Sandbox Code Playgroud)

据说,当悬停在"悬停在我上面"时,应显示兄弟ul.它在Firefox中运行良好,但在IE8中完全没有.我确定我之前看过IE8中使用的'+'兄弟选择器,我哪里出错了?

css siblings

5
推荐指数
1
解决办法
1万
查看次数

PHP遍历函数将单个数组转换为具有子元素的嵌套数组 - 基于父标识

我有一个类似于这样的数组:

Array
(
    Array
    (
        [ID] => 1
        [parentcat_ID] => 0
    ),
    Array
    (
        [ID] => 2
        [parentcat_ID] => 0
    ),
    Array
    (
        [ID] => 6
        [parentcat_ID] => 1
    ),
    Array
    (
        [ID] => 7
        [parentcat_ID] => 1
    ),
    Array
    (
        [ID] => 8
        [parentcat_ID] => 6
    ),
    Array
    (
        [ID] => 9
        [parentcat_ID] => 1
    ),
    Array
    (
        [ID] => 13
        [parentcat_ID] => 7
    ),
    Array
    (
        [ID] => 14
        [parentcat_ID] => 8
    )

)
Run Code Online (Sandbox Code Playgroud)

但是我需要一个函数来递归地将每个项放入相关父数组中的'children'数组中.所以它看起来更像是这样的:

Array
(
    Array …
Run Code Online (Sandbox Code Playgroud)

php arrays tree recursion tree-traversal

4
推荐指数
1
解决办法
3066
查看次数

按字母数字排序一组li标签

我一直在试图获得一个功能,它将按照内容对选择的li标签进行排序,但目前无济于事(至少没有速度/准确度);

$('.sortasc').live('click',function(){

        var liArr = Array();

        $('#licontainer').children('li').each(function(){
           liArr.push($(this).html());
        });

        liArr.sort(alphaNumSort);

        $(liArr).each(function(){
            var current = this;

            var clone = $('li').filter(function(){return($(this).html()==current);}).clone();

            $('li').filter(function(){return($(this).html()==current);}).remove();

            clone.appendTo('#tempsortbox');

        });

        $('#licontainer').html($('#tempsortbox').html());
        $('#tempsortbox').html('')

    });
Run Code Online (Sandbox Code Playgroud)

它既慢又不排序.理想情况下,它会根据位于li中的强标记的内容进行排序.

这是alphaNumSort函数,如果你感兴趣的话(这可以解决它只是蹩脚的HTML和克隆垃圾而不是真的有用)

function alphaNumSort(m,n){
try{
    var cnt= 0,tem;
    var a= m.toLowerCase();
    var b= n.toLowerCase();
    if(a== b) return 0;
    var x=/^(\.)?\d/;

    var L= Math.min(a.length,b.length)+ 1;
    while(cnt< L && a.charAt(cnt)=== b.charAt(cnt) &&
    x.test(b.substring(cnt))== false && x.test(a.substring(cnt))== false) cnt++;
    a= a.substring(cnt);
    b= b.substring(cnt);

    if(x.test(a) || x.test(b)){
        if(x.test(a)== false)return (a)? 1: -1;
        else if(x.test(b)== false)return (b)? -1: 1;
        else{ …
Run Code Online (Sandbox Code Playgroud)

javascript arrays sorting jquery

3
推荐指数
1
解决办法
2756
查看次数

检测文件是否已提供给浏览器?..有点

我有一个按钮,它将window.location设置为一个php文件,生成一个feed然后下载.但是,由于文件的大小因文件放入Feed而有所不同,因此从点击按钮到弹出的文件对话框有时需要一段时间.

我希望能够做的是单击按钮并显示loading.gif,直到对话框/文件完成.

任何想法都会很酷!

干杯

javascript savefiledialog

2
推荐指数
1
解决办法
435
查看次数

使用PHP作为Javascript文件 - 安全性?

在javascript include中使用php文件而不是.js文件有什么问题;

<script type='text/javascript' src='myjavascript.php'></script> 
Run Code Online (Sandbox Code Playgroud)

显然我会经历并插入注册全局问题等,但是否有其他可能发生的漏洞?考虑到有超过10万人将使用此脚本查看该页面.

javascript security code-injection

2
推荐指数
1
解决办法
255
查看次数