小编Sty*_*hon的帖子

使用jQuery获取元素的所有属性

我试图通过一个元素并获取该元素的所有属性来输出它们,例如标记可能有3个或更多属性,我不知道,我需要获取这些属性的名称和值.我正在思考以下问题:

$(this).attr().each(function(index, element) {
    var name = $(this).name;
    var value = $(this).value;
    //Do something with name and value...
});
Run Code Online (Sandbox Code Playgroud)

任何人都可以告诉我这是否可能,如果是这样,那么正确的语法是什么?

javascript jquery attributes

121
推荐指数
2
解决办法
16万
查看次数

$(document).on('click','#id',function(){})vs $('#id').on('click',function(){})

我试图找出它们之间的区别

$(document).on('click', '#id', function(){});
Run Code Online (Sandbox Code Playgroud)

$('#id').on('click', function(){});
Run Code Online (Sandbox Code Playgroud)

我无法找到关于两者之间是否存在任何差异的任何信息,如果是,那么这种差异可能是什么.

有人可以解释是否有任何差异?

syntax jquery

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

Laravel Queue with Supervisor,正在运行但未处理作业

我已经使用数据库设置了Laravel Queue,并且我已经配置了Supervisor以使其保持运行,但是它会在一段时间后停止处理队列.

我正在Mail::queue用来发送电子邮件.如果我SSH到服务器并运行php /home/my/path/to/artisan --env=production --timeout=240 queue:listen --tries=5然后它工作正常,电子邮件发送.但显然我不想使用SSH来处理电子邮件,我希望队列全天候运行,所以我安装了主管来管理它.我编辑了我的supervisord.conf文件以包含以下程序:

[program:laravel_queue]
command=php /home/my/path/to/artisan --env=production --timeout=240 queue:listen --tries=5
autostart=true
autorestart=true
logfile=/var/log/laraqueue.log
Run Code Online (Sandbox Code Playgroud)

当我启动它的程序时,我的电子邮件发送.但是经过一段时间(通常是第二天),电子邮件就不会发送了.我检查数据库,并且工作表填满了.当我SSH到服务器并运行时,supervisorctl status我得到:

laravel_queue  RUNNING    pid 21081, uptime 2 days, 23:18:51
Run Code Online (Sandbox Code Playgroud)

这是说2天,因为它已经在周末运行而今天(星期一)没有工作.显然它没有运行,所以如何让supervisord认识到它没有运行并重新启动呢?

如果我手动重新启动它supervisorctl restart laravel_queue,因为它没有运行主管无法阻止它,只是似乎挂起,直到我按CTRL + C.此时我得到一个我不明白的追溯:

Traceback (most recent call last):
  File "/usr/bin/supervisorctl", line 6, in <module>
    main()
  File "/usr/lib/python2.6/site-packages/supervisor/supervisorctl.py", line 598, in main
    c.onecmd(" ".join(options.args))
  File "/usr/lib/python2.6/site-packages/supervisor/supervisorctl.py", line 86, in onecmd
    return func(arg)
  File "/usr/lib/python2.6/site-packages/supervisor/supervisorctl.py", line 467, in do_restart
    self.do_stop(arg)
  File "/usr/lib/python2.6/site-packages/supervisor/supervisorctl.py", line …
Run Code Online (Sandbox Code Playgroud)

php supervisord laravel

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

获取iOS应用在后台甚至被杀的位置

我的应用程序需要在应用程序处于活动状态以及何时处于非活动状态并被杀死时获取用户的位置.当用户的位置靠近商店时,应用程序必须发送本地通知.

我不确定到底发生了什么,但是我无法让我的应用程序在后台获取位置并在被杀时将其唤醒.

我有一个位置管理器(单例,用于"使用"和"始终"时的两种情况),我在.plist中定义了NSLocationAlwaysUsageDescription和NSLocationWhenInUseUsageDescription

我在做的是:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    //The app has been killed/terminated (not in background) by iOS or the user.
    if ([launchOptions objectForKey:UIApplicationLaunchOptionsLocationKey]){

        _locationManager = [CoreLocationManager sharedInstance];
        _locationManager.isAppActive = NO;
        _locationManager.locationManager.desiredAccuracy = kCLLocationAccuracyBestForNavigation;
        _locationManager.locationManager.activityType = CLActivityTypeOtherNavigation;

        if ([_locationManager.locationManager respondsToSelector:@selector(requestAlwaysAuthorization)]) {
            [_locationManager.locationManager requestAlwaysAuthorization];
        }

        [_locationManager addLocationManagerDelegate:self];
    }
}


- (void)applicationDidBecomeActive:(UIApplication *)application
{
    if (_locationManager.locationManager){
        _locationManager.isAppActive = YES;
        [_locationManager.locationManager stopMonitoringSignificantLocationChanges];
    }

    _locationManager = [CoreLocationManager sharedInstance];

    if ([_locationManager respondsToSelector:@selector(requestAlwaysAuthorization)]) {
        [_locationManager.locationManager requestAlwaysAuthorization];
    }

    if ([_locationManager.locationManager respondsToSelector:@selector(requestWhenInUseAuthorization)]) {
        [_locationManager.locationManager requestWhenInUseAuthorization];
    } …
Run Code Online (Sandbox Code Playgroud)

objective-c core-location ios appdelegate

7
推荐指数
1
解决办法
3053
查看次数

如何在使用filter_input时检查POST和GET数据?

我想知道是否有可能得到一个变量,无论是在POST还是GET,然后使用filter_input()来清理它.

起初我认为这$var = filter_input(INPUT_POST | INPUT_GET, "var", FILTER_SANITIZE_STRING)可能有效,但事实并非如此,PHP手册指出您只能传递一种输入.

我也尝试过INPUT_REQUEST,奇怪的是没用.该函数识别它(即它没有抛出错误,说我在$ input中输错了),但它不会得到任何代码.是的,我知道不要INPUT_REQUEST在现场环境中使用,我只是在测试它是否可行.

目前我做以下事情:

$var = filter_input(INPUT_POST, "var", FILTER_SANITIZE_STRING);
if(!$var) $var = filter_input(INPUT_GET, "var", FILTER_SANITIZE_STRING);
Run Code Online (Sandbox Code Playgroud)

然而,在PHP中有许多东西,通常有一种更简单的方法可以在一个命令中为我完成所有操作.我想知道这是否是这种情况,我可以将它们组合成一张支票吗?我在谷歌上进行了一次粗略的搜索,甚至找不到任何人之前尝试过这个的任何参考,更不用说解决方案,所以现在我转向你们好人.

php optimization post get filter-input

6
推荐指数
1
解决办法
2633
查看次数

Jquery文件上载始终失败,文件上载已中止

我正在尝试让Blueimp的Jquery文件上传插件在我的网站上运行,但是对于我的生活来说无法上传文件.我整天都在努力工作而且陷入困境.它将上传文件并将其提交给UploadHandler类,但是当它尝试完成该handle_file_upload函数时,它会到达:

file_put_contents(
    $file_path,
    fopen('php://input', 'r'),
    $append_file ? FILE_APPEND : 0
);
Run Code Online (Sandbox Code Playgroud)

但总是返回0.我无法弄清楚文件为什么不上传.我得到的完整回复是:

{"files":[
    {"name":"1397489968-32",
    "size":0,
    "type":"multipart\/form-data; boundary=----WebKitFormBoundaryrmi4L2ouOmB4UTVm",
    "error":"File upload aborted",
    "deleteUrl":"http:\/\/onceridden.demomycms.co.uk\/eshop\/library\/ajax\/?file=1397489968-32",
    "deleteType":"DELETE"}
]}
Run Code Online (Sandbox Code Playgroud)

ajax.file-upload.php 只实例化UploadHandler,没有别的.

如果您想查看UploadHandler的完整代码,可以从github下载,这对我来说太大了.

有人可以告诉我为什么文件不会上传?是的我已经完成了基本操作,例如检查文件夹是CHMOD 777.我已经尝试过各种不同类型的文件(它们必须是图像才能工作,限制为jpg,png或gif)和大小; 都产生相同的结果.

根据要求,这是JS文件:

$(function () {
    'use strict';
    // Change this to the location of your server-side upload handler:
    var url = '/eshop/library/ajax/ajax.file-upload.php',
        uploadButton = $('<button/>')
            .addClass('btn btn-primary')
            .prop('disabled', true)
            .text('Processing...')
            .on('click', function () {
                var $this = $(this),
                    data = $this.data();
                $this
                    .off('click')
                    .text('Abort')
                    .on('click', function () { …
Run Code Online (Sandbox Code Playgroud)

javascript php ajax jquery file-upload

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

MySQL像计数器一样由多个用户更新同一行

我正在尝试为用户帖子增加一个喜欢的计数器。我的MySQL表中的帖子包含“喜欢”字段,该字段显示此特定帖子有多少喜欢的对象。现在,如果多个用户同时喜欢同一条帖子,将会发生什么?我认为这会导致冲突或无法正确递增?如何避免这种情况,我是否需要锁定行或拥有哪些选项?

我的查询可能看起来像这样:

UPDATE posts
    SET likes = likes + 1,
    WHERE id = some_value
Run Code Online (Sandbox Code Playgroud)

当用户不喜欢帖子时,也应该递减->喜欢-1

谢谢你的帮助!

php mysql

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

为什么preg_match_all返回两个匹配?

我试图确定一个字符串是否在双引号之间有任何单词preg_match_all,但它是重复结果,第一个结果有两组双引号,其中被搜索的字符串只有一组.

这是我的代码:

$str = 'Test start. "Test match this". Test end.';
$groups = array();
preg_match_all('/"([^"]+)"/', $str, $groups);
var_dump($groups);
Run Code Online (Sandbox Code Playgroud)

var转储产生:

array(2) {
    [0]=>
    array(1) {
        [0]=>
        string(17) ""Test match this""
    }
    [1]=>
    array(1) {
        [0]=>
        string(15) "Test match this"
    }
}
Run Code Online (Sandbox Code Playgroud)

正如你所看到的那样,第一个数组是错的,为什么要preg_match_all返回呢?

php regex duplicate-data preg-match-all

5
推荐指数
2
解决办法
3426
查看次数

更改公用文件夹名称后使用artisan服务

与许多主机一样,我们的公用文件夹被调用public_html.这是在共享主机上,所以无法更改.我已经将public文件夹更改public_html为反映这一点,但是当我artisan serve停止工作时.每当我尝试启动它时,我得到:

[ErrorException]
chdir(): No such file or directory (errno 2)
Run Code Online (Sandbox Code Playgroud)

如果我将文件夹重命名为public,则artisan serve再次开始工作.

我试过在laracasts上关注这篇文章,并且帖子中的用户报告工匠为他们工作,但它对我没有任何影响.如何更改文件夹并artisan serve有效?

php laravel laravel-5 artisan

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

在MySQLi准备的语句中STMT代表什么?

MySQLi预处理语句使用变量,$stmt但我找不到STMT代表什么或为什么使用它.对于其他变量(例如$query$results)一直对我有意义,我只是想知道,为什么$stmt,背后的历史是什么?

php mysqli prepared-statement

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