小编Mar*_*tin的帖子

在MySQL中加入两个子查询

我在MySQL的联合两个子查询中遇到问题,例如

(select * from table1 where id = 1 group by f1) a1 
join 
(select * from table2 where id = 2 group by f2) a2 ON  a1.f3 = a2.f3;
Run Code Online (Sandbox Code Playgroud)

错误1064(42000):您的SQL语法有错误; 查看与您的MySQL服务器版本对应的手册,以便在第1行'join(select*from table1 where id = 2)'附近使用正确的语法

我的语法不正确吗?

mysql sql join

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

RegEx - 贪婪的白色空间匹配

我试图确定正确的RegEx语法来执行以下操作.我在一个文件中有一行,我希望在第一次出现空格之前匹配每个字符.

例如在行中:

123abc xyz foo bar

我不清楚为什么以下:

^.*\s
Run Code Online (Sandbox Code Playgroud)

匹配单词栏中的b:

123abc xyz foo

在我看来,\ s是贪婪的,但我不确定我怎么能让它不贪婪,只是匹配123abc我尝试了各种形式的这个正则表达式,试图使它不贪婪^.*\s?或类似的东西,但是我没有成功.先感谢您

regex

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

无法在SQL代码上解析符号(PhpStorm问题)

我正在使用PhpStorm 2016.1.2并且已经使用PhpStorm几年了.我使用数据库连接设置了Storm,并显示了我的PHP页面连接到的MySQL数据库.SQL通常通过数据库连接类在自定义函数的PHP页面中编写.

一个示例代码块:

$checkData = $dataBaseSecure->getSelect(
"SELECT check_login.fail_id, UNIX_TIMESTAMP(check_login.last_action) AS timer
FROM check_login WHERE check_login.ip_addr = ? AND check_login.check_drop = ? ",
 $data, TRUE);  
Run Code Online (Sandbox Code Playgroud)

不要担心在PHP数据库PHP包装,这种风格和布局SQL一直围绕在我的工作了几年,在PhpStorm和工作完整,准确地在服务器上,所有testings.

截至昨日(2016年6月17日)

我不知道发生了什么变化,但突然PhpStorm现在告诉我,在我的所有SQL字符串上,我的所有项目:

Unable to resolve symbol '<table name>'

要么

Unable to resolve column '<column name>'

而且(由于这个原因)PhpStorm不再执行任何自动完成或组织功能,因为我处理我的SQL代码.

解决方案我试过了

  • 我已经尝试根据类似问题的答案使我的缓存无效并重新验证.但这没有帮助.

  • 我已经非常仔细地探索了我的设置,但PhpStorm数据库选项卡成功连接到数据库,据我所知,我没有做任何更改导致这种行为改变.

  • 我已经查看了PhpStorm首选项中的各种(和许多)设置,但看不到任何关于此问题的任何内容,或者我调整过的更改都没有解决它.

  • 我找到了这个答案,但这似乎并不适用,因为我的表名不是变量.我也发现这篇文章,虽然2014年的日期显示了类似的问题,但不是一个合适的解决方案.

    • 我在大多数项目中只有一个数据库连接,但如果出现此问题,数据库的数量似乎不会生效.
  • 使用命名实体周围的适当反引号完全转义SQL查询无法解决问题.

  • 我已正确配置我的SQL方言到正确的MySQL.

  • 阅读我在Stack Overflow上找到的相关帖子没有提供有用的信息.


我在PhpStorm中没有与此问题或PHP/MySQL交互相关的插件.

如果您有任何想法如何解决这个问题,请告诉我.如果您有特定的偏好,请让我查一下,请告诉我,我可以将它们添加到问题中,(在PhpStorm中有很多偏好我现在不会在这里发布,因为我敢肯定与此问题无关).

关键是这个系统两天前工作得很好!!!

phpstorm

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

Stripe checkout 不接受元数据

我已经集成了 Stripe checkout(最新版本)并且需要发送额外的数据,以便我可以协调稍后的 webhook。

Stripe 拒绝元数据并出现以下错误

Fatal error: Uncaught exception 'Stripe\Error\InvalidRequest' with message 'Received unknown parameter: metadata' 
Run Code Online (Sandbox Code Playgroud)

我部分编辑的代码如下所示

$object = \Stripe\Checkout\Session::create([
    'success_url' => 'www/payment_processor.php?action=success',
    'cancel_url' => 'www/payment_processor.php?action=cancel',
    'payment_method_types' => ['card'],
    'customer_email' => $email,
    'metadata' => ['user_id' => $user_id],
    'line_items' => [[
        'amount' => $amount,
        'currency' => $currency,
        'name' => 'Purchase',
        'description' => $description,
        'quantity' => 1,
    ]]
]);
Run Code Online (Sandbox Code Playgroud)

我希望元数据被接受并与 webhook 一起返回,如Stripe 文档中所述

php stripe-payments

10
推荐指数
5
解决办法
5149
查看次数

即使存在locales,PHP setlocale也无法正常工作

问题已解决(见下文)

我已经在我的服务器上生成了语言环境,我已经确认它们存在(我的语言环境 - 下面提供),但是当我使用时:

    setlocale(LC_TIME,'fr_FR');
    or setlocale(LC_TIME,'fr_FR.utf8');
Run Code Online (Sandbox Code Playgroud)

它根本不起作用.

样品:

    <?php
    setlocale(LC_TIME,'fr_FR.utf8');
    echo 'locale - '.setlocale(LC_TIME,'0');
    echo ' : month - '.strftime('%B');
    echo '<br />';

    setlocale(LC_TIME,'fr_FR');
    echo 'locale - '.setlocale(LC_TIME,'0');
    echo ' : month - '.strftime('%B');
    echo '<br />';

    setlocale(LC_TIME,'fr-FR');
    echo 'locale - '.setlocale(LC_TIME,'0');
    echo ' : month - '.strftime('%B');
    echo '<br />';

    setlocale(LC_TIME,'fr');
    echo 'locale - '.setlocale(LC_TIME,'0');
    echo ' : month - '.strftime('%B');
    echo '<br />';

    setlocale(LC_TIME,'french');
    echo 'locale - '.setlocale(LC_TIME,'0');
    echo ' : month - '.strftime('%B');
    echo '<br />'; …
Run Code Online (Sandbox Code Playgroud)

php setlocale

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

左对齐和右对齐CSS中的一个元素内容

我在inspect上有一个HTML代码(如下所示),其中我想在CSS中左对齐和右对齐时间元素内容。

HTML代码(检查时):

<time datetime="00:15 02-08-2019" style="width:194px;" 
data-timezone="et">August 2 &nbsp;  &nbsp; 00:15</time>
Run Code Online (Sandbox Code Playgroud)

上面的检查是从以下php代码生成的:

邮递区号:

<time style="width:194px;" datetime="<?php echo esc_attr(date_format($ts, 'H:i d-m-Y')) 
?>"data-timezone="<?php echo esc_attr($tz_param) ?>"><?php 
echo ucfirst(date_i18n( 'j F &\nb\sp; &\nb\sp; H:i', 
$ts->getTimeStamp()-(60*60*4))); ?></time>`
Run Code Online (Sandbox Code Playgroud)


上面的检查html代码属于以下屏幕截图:

在此处输入图片说明

问题陈述:

我想知道我需要添加什么CSS代码,以便可以左对齐August 2(已经存在)和右对齐00:15

html css php fixed-width

9
推荐指数
1
解决办法
220
查看次数

如何删除未使用的CSS规则

编辑:虽然我的具体问题是由于Twitter Bootstrap系统的原因,但我正在寻找的解决方案不需要特定的Twitter Bootstrap,而是更适合任何CSS样式表的解决方案.

我正在开始探索我正在研究的当前项目的Twitter Bootstrap世界.我正在使用Bootstrap 3.3.6

问题 (为什么我有下面的问题)

基本的Bootstrap CSS文件是6760行,以及用于将我自己的自定义CSS添加到站点的其他文件.总的来说,这使得每个页面的站点加载了大约8700行CSS(未经分析).

但适用于该网站的规则仅使用约700条线.对于每个页面来说,这是一个巨大的开销,即使将CSS缩小为.min.css格式,这仍然是一个巨大的百分比开销.

我正在寻找一种方法来减少这种开销,而无需从CSS文件中删除任何使用的规则.

我尝试过的 (为什么它不起作用或不切实际)

我之前已经非常成功地使用了Firefox Dust-Me CSS精简器,它可以识别页面中甚至整个站点上所有未使用的CSS规则.

这是我想要的东西,它有两个严重的缺点:

  • 它只保留在页面上用于所使用的设备/媒体的CSS规则(例如,它告诉我IE10视口错误解决方法 CSS文件中的所有规则都没有使用,因为我使用的是Firefox浏览器而不是比IE10).它也没有考虑媒体查询特定规则.

  • 使用Dust-Me的另一个主要缺点(特别是,但我发现其他类似的程序有类似的缺点)是虽然它会告诉我哪些规则没有使用,但它不能给我复制/粘贴的能力源文件中使用的CSS.

我还研究了一些其他的CSS备用规则删除程序和Google Chrome开发人员审核,它们非常有用,但也做了同样的事情,以文本格式列出了未使用的规则,这几乎只是我正在寻找的工作的一半.

问题 (为什么我需要你的帮助来解决这个问题)

所以我有一个谷歌Chrome审核,告诉我88%bootstrap.css和65%的bootstrap-theme.css未使用.这些未使用的元素以文本格式列出,并且有数百个.目前我只能看到我需要在每一个上找到/替换它们,从源中删除它们[ 规则标识符 ]然后再通过CSS文件并删除所有不再有任何规则的命令.

所以我问这个:

我从整个网站读取CSS并返回网站中引用的所有CSS规则的最佳方法或方法是什么,因此未引用的规则不会返回给运营商?

然后我可以从这个函数中获取输出,然后将其缩小并保存引导程序的大量CSS开销.

或者,有没有完全不同的做法,我没有考虑过?


附加: 我已阅读如何从twitter bootstrap中删除未使用的样式?这与我的要求类似,但这里的正确答案引用了某种Bootstrap选择,我可以从Bootstrap中选择哪种样式.这是日期2013年,似乎是指Bootstrap版本2.

另外,我不使用也不Grunt熟悉Less.对不起: - /

css twitter-bootstrap twitter-bootstrap-3

8
推荐指数
1
解决办法
1543
查看次数

意外的HTTP / 1.x请求:POST / 3 / device / XXXX

嗨,我正在使用apns发送IOS推送通知,并在php中卷曲,并收到此错误消息。

我也定义了“ CURL_HTTP_VERSION_2_0”,但仍然出现此错误:

意外的HTTP / 1.x请求:POST / 3 / device /

这是我的代码:

       $key_file = XXXXXX';
       $secret = null; 
       $private_key = JWKFactory::createFromKeyFile($key_file, $secret, [
                'kid' => '3W6B5LQQHX',
                'alg' => 'ES256',
                'use' => 'sig',
    ]);

    $payload = [
        'iss' => 'RUK725A7V4',
        'iat' => time(),
    ];

    $header = [
        'alg' => 'ES256',
        'kid' => $private_key->get('kid'),
    ];

    $jws = JWSFactory::createJWSToCompactJSON(
                    $payload, $private_key, $header
    );


    if (!defined('CURL_HTTP_VERSION_2_0')) {
        define('CURL_HTTP_VERSION_2_0', 3);
    }

        $http2_server = 'https://api.development.push.apple.com'; 
        $app_bundle_id = 'com.MD.example';

        $token = $device->device_id;
        $url = "{$http2_server}/3/device/{$token}";

        // headers …
Run Code Online (Sandbox Code Playgroud)

php curl apns-php

8
推荐指数
1
解决办法
2888
查看次数

.htaccess标头被Apache忽略

我有一个网站使用的核心.htaccess详细信息与许多其他网站相同;但是,该网站未正确加载.htaccess指令-提供以下基本HTTP标头集:

    HTTP/1.1 200 OK
    Date: Mon, 12 Nov 2018 09:34:28 GMT
    Server: Apache
    Keep-Alive: timeout=5, max=100
    Connection: Keep-Alive
    Transfer-Encoding: chunked
    Content-Type: text/html; charset=UTF-8
Run Code Online (Sandbox Code Playgroud)

该网站本身可以很好地加载,但是.htaccess中的附加头未得到认可/加载。

所以.htaccess正在阅读,对吗?

是的-htaccess文件包含HTTPS强制重定向和域名重定向(从.co.uk到.com地址(都到同一网站帐户))

这些工作。

PHP提供的标头也可以很好地加载

测试页上的PHP标头可以正常加载:

<?php
header("Cache-Control: no-cache, must-revalidate");
header('Content-Type: text/html; charset=utf-8');
header("X-Clacks-Overhead: GNU Terry Pratchett");
header("Content-Language: en");
header("X-XSS-Protection: 1; mode=block");
header("X-Frame-Options: SAMEORIGIN");
header("X-Content-Type-Options: nosniff");
?>
Run Code Online (Sandbox Code Playgroud)

.htaccess不会认可中设置的相同标头。

所以这是.htaccess语法错误!

我看不到;通常,网站会显示.htaccess 错误,并会加载HTTP-500错误消息,但是此处,网站在浏览器中的加载不会出现问题。

IS故意语法错误的错误-500 HTTP响应返回预期。

Ok bozo,请检查您的错误日志!

绝对; 我完全同意。Apache错误日志为空!

您尝试采取什么措施来解决此问题?

  • 确认httpd.conf允许阅读.htaccess
  • 确认已在服务器上加载mod_headers.c
  • 注释掉并重新编写了各种规则,没有任何效果 …

php apache .htaccess

8
推荐指数
3
解决办法
1892
查看次数

我怎么能用CheckBoxFor使用int?

我需要帮助来构建一个获取int值的CheckBoxFor.

类似于:@ Html.CheckBoxForInt(m => m.foo.intValue)

应检查intValue = 1是否未检查

谢谢

custom-controls razor asp.net-mvc-3

7
推荐指数
2
解决办法
9335
查看次数