小编bep*_*ter的帖子

替代MySQL中的Intersect

我需要在MySQL中实现以下查询.

(select * from emovis_reporting where (id=3 and cut_name= '?????' and cut_name='??') ) 
intersect
( select * from emovis_reporting where (id=3) and ( cut_name='?????' or cut_name='??') )
Run Code Online (Sandbox Code Playgroud)

我知道相交不在MySQL中.所以我需要另一种方式.请指导我.

mysql intersect

60
推荐指数
4
解决办法
10万
查看次数

openssl s_client -cert:证明客户端证书已发送到服务器

背景

我陷入与服务提供商的指责匹配,其服务提供商具有受SSL服务器和客户端证书保护的API .

  • 我已经生成了CSR,从公共CA(本例中为GoDaddy)获得了证书,并将证书和CA链提供给服务提供商.
  • 他们应该将CA和我的客户端证书加载到他们的网关中.
  • 我正在使用最基本的级别测试 openssl s_client -connect ... -cert ... -key ...
  • 提供商告诉我他们的日志表明我的请求根本不包括客户端SSL证书.
  • 奇怪的是,我的证书的正确CA颁发者确实出现在SSL握手期间提供的"可接受的客户端证书CA名称"列表中.
  • 作为参考,我创建并提供给他们进行测试的自签名证书确实可以正常工作.

样本(失败)请求

[shell ~]$ openssl s_client -connect host:443 -cert cert_and_key.pem -key cert_and_key.pem -state -quiet
CONNECTED(00000003)
SSL_connect:before/connect initialization
SSL_connect:SSLv2/v3 write client hello A
SSL_connect:SSLv3 read server hello A
depth=2 **SNIP**
verify return:1
depth=1 **SNIP**
verify return:1
depth=0 **SNIP**
verify return:1
SSL_connect:SSLv3 read server certificate A
SSL_connect:SSLv3 read server key exchange A
SSL_connect:SSLv3 read server certificate request A
SSL_connect:SSLv3 read server done A
SSL_connect:SSLv3 …
Run Code Online (Sandbox Code Playgroud)

ssl openssl ssl-certificate

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

将时间范围切成部分

第一个问题.要温柔.

我正在研究跟踪技术人员完成任务所花费时间的软件.需要增强软件以基于星期几和一天中的时间识别不同的可计费率乘数.(例如,"工作日下午5点以后的时间半.")

使用该软件的技术人员只需记录日期,开始时间和停止时间(以小时和分钟为单位).该软件有望在速率乘数改变时的边界处打破时间.一次性条目不允许跨越多天.

以下是费率表的部分样本.显然,第一级数组键是一周中的几天.第二级数组键表示新乘数启动时的时间,并运行到数组中的下一个连续条目.数组值是该时间范围的乘数.

[rateTable] => Array
    (
        [Monday] => Array
            (
                [00:00:00] => 1.5
                [08:00:00] => 1
                [17:00:00] => 1.5
                [23:59:59] => 1
            )

        [Tuesday] => Array
            (
                [00:00:00] => 1.5
                [08:00:00] => 1
                [17:00:00] => 1.5
                [23:59:59] => 1
            )
        ...
    )
Run Code Online (Sandbox Code Playgroud)

用简单的英语表示,从午夜到早上8点,从下午8点到下午5点,正常时间从5点到晚上11:59,时间为半年.这些中断发生的时间可以是第二次的任意时间,并且每天可以有任意数量的它们.(这种格式完全可以协商,但我的目标是让它尽可能易于阅读.)

例如:星期一从15:00:00(下午3点)到21:00:00(晚上9点)记录的时间条目包括2小时计费1x和4小时计费1.5x.单个时间条目也可以跨越多个中断.使用上面的示例rateTable,从上午6点到下午9点的时间条目将具有3个子范围,从6-8 AM @ 1.5x,8 AM-5PM @ 1x,以及5-9 PM @ 1.5x.相比之下,时间输入也可能只是从08:15:00到08:30:00,并且完全包含在单个乘数的范围内.

我真的可以使用一些帮助编写一些PHP(或至少设计一个算法),这可能需要一周中的一天,一个开始时间和一个停止时间,并解析到所需的子部分.将输出作为一个由(start,stop,multiplier)三元组的多个条目组成的数组是理想的.对于上面的示例,输出将是:

[output] => Array
    (
        [0] => Array
            (
                [start] => 15:00:00
                [stop] => 17:00:00
                [multiplier] => 1
            )

        [1] => Array
            (
                [start] …
Run Code Online (Sandbox Code Playgroud)

php time slice

20
推荐指数
1
解决办法
1522
查看次数

Vagrant 403 Forbidden

我已经成功运行了Vagrant大约一个星期.昨晚我跑了流浪汉重装,现在我再也无法访问我的网站了.

我的文件位于/ vagrant/Sites.起初我的"欢迎页面"住在/ vagrant/Sites渲染

http://localhost:4567/ 
Run Code Online (Sandbox Code Playgroud)

我的所有项目都是站点下的文件夹.例如,/ vagrant/Sites/test不会呈现index.html.我得到以下内容

被禁止

您无权访问此服务器上的/.Apachehost/2.4.6(Ubuntu)服务器位于localhost端口4567

vhost看起来像:

<VirtualHost *:80>
  DocumentRoot "/vagrant/Sites/test"
  ServerName test
  <Directory "/vagrant/Sites/test">
    AllowOverride All
  </Directory>
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)

vhost由root拥有.我的项目文件归vagrant和chmod'ed 0777所有.

在没有成功之后,我做了一个完全的流浪汉破坏,随后流浪,然后localhost主机欢迎页面停止渲染以及禁止的错误.

apache2 vagrant

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

在没有`attr_accessor`的情况下为rails模型设置非数据库属性

在PHP中,我可以在模型中设置属性(不是数据库中的列).例如(PHP代码),

$user = new User;
$user->flag = true;
Run Code Online (Sandbox Code Playgroud)

但是在rails中,当我设置数据库中不存在的任何属性时,它将抛出错误undefined method flag.有attr_accessor方法,但如果我需要大约10个临时属性会发生什么?

ruby ruby-on-rails

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

PHP simpleXML:处理SOAP请求中的未知命名空间

有一 现有 问题,关于PHP的SimpleXML和处理XML名称空间.我所看到的所有问题都提出了一个基本假设:代码事先知道将在传入的SOAP请求中包含哪些命名空间.就我而言,我在SOAP请求中看到了不一致的命名空间.

具体来说,我一直在努力实现一个Web服务来与Quickbooks Web Connector(pdf)交谈,我看到的一些示例请求如下所示:

<soapenv:Envelope 
 xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
 xmlns:dev="http://developer.intuit.com/">
   <soapenv:Header/>
   <soapenv:Body>
      <dev:authenticate>
         <dev:strUserName>username</dev:strUserName>
         <dev:strPassword>password</dev:strPassword>
      </dev:authenticate>
   </soapenv:Body>
</soapenv:Envelope>
Run Code Online (Sandbox Code Playgroud)

......有些看起来像这样:

<s11:Envelope 
 xmlns:s11='http://schemas.xmlsoap.org/soap/envelope/' 
 xmlns:ns1='http://developer.intuit.com/'>
  <s11:Header/>
  <s11:Body>
    <ns1:authenticate>
      <ns1:strUserName>username</ns1:strUserName>
      <ns1:strPassword>password</ns1:strPassword>
    </ns1:authenticate>
  </s11:Body>
</s11:Envelope>
Run Code Online (Sandbox Code Playgroud)

...或这个:

<SOAP-ENV:Envelope 
 xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" 
 xmlns:ns1="http://developer.intuit.com/">
   <SOAP-ENV:Header/>
   <SOAP-ENV:Body>
      <ns1:authenticate>
         <ns1:strUserName>username</ns1:strUserName>
         <ns1:strPassword>password</ns1:strPassword>
      </ns1:authenticate>
   </SOAP-ENV:Body>
</SOAP-ENV:Envelope>
Run Code Online (Sandbox Code Playgroud)

我理解使用xpath()来选择元素,但是假设你知道要查找的命名空间.在命名空间没有任何一致性的情况下,我很难弄清楚如何正确地和编程地选择要处理的节点的内容.

命名空间在这个应用程序中完全不相关 - 我可以通过正则表达式运行原始XML来whatever:<whatever:mytag>第一个中删除吗?

php soap namespaces simplexml

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