小编bil*_*oah的帖子

按两列排序MySQL表

如何按两列对MySQL表进行排序?

我想要的是按最高评分排序的文章,然后是最近的日期.作为一个例子,这将是一个示例输出(左#是评级,然后是文章标题,然后是文章日期)

50 | This article rocks          | Feb 4, 2009
35 | This article is pretty good | Feb 1, 2009
5  | This Article isn't so hot   | Jan 25, 2009

我正在使用的相关SQL是:

ORDER BY article_rating, article_time DESC
Run Code Online (Sandbox Code Playgroud)

我可以按其中一种排序,但不能同时排序.

mysql sql-order-by

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

在Safari中设置跨域cookie

Evernote的书签能够做到这一点,因此即使赏金将以非生产性的方式进行,最受欢迎的答案也不会回答这个问题.

我必须从域B.com调用域A.com(使用http设置cookie).我在域名B.com上所做的就是(javascript):

var head = document.getElementsByTagName("head")[0];
var script = document.createElement("script");
script.src = "A.com/setCookie?cache=1231213123";
head.appendChild(script);
Run Code Online (Sandbox Code Playgroud)

这会在我测试的每个浏览器上设置A.com上的cookie,但Safari除外.令人惊讶的是,即使没有P3P标头,这也适用于IE6.

有没有办法在Safari中使这项工作?

javascript cookies safari cross-domain cross-site

61
推荐指数
4
解决办法
9万
查看次数

如何在select2选项中呈现html

这个从远程源加载的数据示例中,我可以看到图像和其他html元素呈现为选项.我想使用本地数组中的数据完成同样的事情.我已经尝试构建一个数组,如文档中所述并添加data选项,但html呈现为明文:

var data = [
  { id: 0, text: '<div style="color:green">enhancement</div>' },
  { id: 1, text: '<div style="color:red">bug</div><div><small>This is some small text on a new line</small></div>' }];

$("select").select2({
  data: data
})
Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<link href="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.2/css/select2.min.css" rel="stylesheet" />
<script src="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.2/js/select2.min.js"></script>

<select></select>
Run Code Online (Sandbox Code Playgroud)

如何将html内容添加到select2选项?

html jquery jquery-select2 jquery-select2-4

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

SQL查询将前缀添加到字段中的现有值

我已经搜索并搜索了这个问题的答案,我认为对于那些知道SQL(不是我)的人来说,这一定是孩子的游戏.

我想在我的数据库中的表的字段中插入值的前缀.

更具体地说,我有一个表jos_content,其中我有一个字段'title'(其中包含我的joomla网站的内容项的标题).

此字段"标题"中的所有值均为个人姓名.现在我要做的就是添加前缀'Mr.' 到该字段的所有值.

我可以通过单击编辑铅笔图标从phpmyadmin执行此操作,只需在所有值前面添加Mr.但我有大约750行和一个SQL命令可以插入前缀'Mr.' 在这个领域的所有价值观面前将是一个很大的帮助.

我已经阅读了有关'UPDATE'命令但是用你提供的内容替换了值.但我想让值保持不变并在它们之前添加前缀.

请问任何人都可以通过SQL命令帮助我实现这一目标吗?

万分感谢.

mysql sql joomla phpmyadmin

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

如果不存在,jQuery v1.10 + val()会创建空选项

最近更新到jQuery v1.12并发现它将<select>元素设置为不存在的选项(如果不存在),而不是优雅地回退以取消之前的值.

这是我习惯的行为(v1.10之前):

$("button").click(function() {
  $("select").val('');
});
Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<select>
  <option value="1">something 1</option>
  <option value="2" selected="selected">something 2</option>
</select>
<button>reset</button>
Run Code Online (Sandbox Code Playgroud)

以下是v1.10 +的行为:

$("button").click(function() {
  $("select").val('');
});
Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.0/jquery.min.js"></script>
<select>
  <option value="1">something 1</option>
  <option value="2" selected="selected">something 2</option>
</select>
<button>reset</button>
Run Code Online (Sandbox Code Playgroud)

这是一个错误还是预期的行为?

我阅读了更改日志,但没有看到任何具体提及此更改但发现它具有破坏性.

(请注意:我不是在寻找解决方法,如评论中所述,我已经更改了我的应用程序$('select').prop("selectedIndex", 0).change();)

jquery

15
推荐指数
1
解决办法
206
查看次数

PHP SoapClient不处理WSDL中的abstract和substitutionGroup属性

我正在使用他们提供的wsdl向Canada Post发送一个电话,其中包含以下部分:

<!-- group-id and transmit-shipment are mutually exclusive -->
<xsd:element name="groupIdOrTransmitShipment" abstract="true" />
<xsd:element name="group-id" type="tns:GroupIDType" substitutionGroup="tns:groupIdOrTransmitShipment"/>
<xsd:element name="transmit-shipment" type="xsd:boolean" fixed="true" substitutionGroup="tns:groupIdOrTransmitShipment"/>

<xsd:complexType name="ShipmentType">
    <xsd:all>
        <xsd:element ref="tns:groupIdOrTransmitShipment" />
        <xsd:element name="quickship-label-requested" type="xsd:boolean" minOccurs="0"/>
        <xsd:element name="cpc-pickup-indicator" type="xsd:boolean" fixed="true" minOccurs="0"/>
        <xsd:element name="requested-shipping-point" type="tns:PostalCodeType" minOccurs="0"/>
        <xsd:element name="shipping-point-id" type="tns:OutletIDType" minOccurs="0" />
        <xsd:element name="expected-mailing-date" type="xsd:date" minOccurs="0"/>
        <xsd:element name="delivery-spec" type="tns:DeliverySpecType"/>
        <xsd:element name="return-spec" type="tns:ReturnSpecType" minOccurs="0"/>
    </xsd:all>
</xsd:complexType>
Run Code Online (Sandbox Code Playgroud)

在他们的代码示例中,他们扩展了Soap类并覆盖了__doRequest()Soap方法,如下所示:

/*
 Need to override SoapClient because the abstract element 'groupIdOrTransmitShipment' is expected to be in the request …
Run Code Online (Sandbox Code Playgroud)

php soap wsdl soap-client

14
推荐指数
1
解决办法
696
查看次数

使用SoapClient从PHP中获取WSDL元素

我想从<Version>嵌套在<service>WSDL块中的元素中获取文本.有问题的WSDL是Ebay的交易 api.有问题的片段看起来像这样:

<wsdl:service name="eBayAPIInterfaceService">
    <wsdl:documentation>
        <Version>941</Version>
    </wsdl:documentation>
    <wsdl:port binding="ns:eBayAPISoapBinding" name="eBayAPI">
        <wsdlsoap:address location="https://api.ebay.com/wsapi"/>
    </wsdl:port>
</wsdl:service>
Run Code Online (Sandbox Code Playgroud)

我现在正在这样做:

$xml = new DOMDocument();
$xml->load($this->wsdl);
$version = $xml->getElementsByTagName('Version')->item(0)->nodeValue;
Run Code Online (Sandbox Code Playgroud)

这有效,但我想知道是否有一种方法可以使用PHP的SOAP扩展本地获取它?

我在想以下内容会起作用,但事实并非如此:

$client = new SoapClient($this->wsdl);
$version = $client->eBayAPIInterfaceService->Version;
Run Code Online (Sandbox Code Playgroud)

php xml soap wsdl ebay-api

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

CSS转换在jQuery .load回调失败

我有一个函数,使用jQuery将html加载到一个表中,然后使用回调向其中一行添加一个类.该功能由页面上的各种UI驱动事件触发.我也有一个css转换规则,所以颜色应淡入(transition: background-color 1000ms linear).该函数如下所示:

function load_tbody(row_id) {
    $('tbody').load("load_tbody.php", function() {
        $(row_id).addClass('green');
    });
}
Run Code Online (Sandbox Code Playgroud)

加载html后,成功添加类并将行颜色设置为绿色.但是,我的css转换规则似乎被忽略了.

当我添加一点延迟,甚至10毫秒时,它工作正常:

function load_tbody(row_id) {
    $('tbody').load("load_tbody.php", function() {
        setTimeout(function() {
            $(row_id).addClass('green');
        }, 10);
    });
}
Run Code Online (Sandbox Code Playgroud)

状态的jQuery文档.load():

如果提供"完整"回调,则在后处理和执行HTML插入之后执行.

对我而言,这将表明新元素已加载到dom中,并且已应用现有样式并且可以进行操作.为什么转换在第一个示例中失败但在第二个示例中成功?

这是一个功能齐全的示例页面,用于演示相关行为:

http://so-37035335.dev.zuma-design.com/

虽然上面的例子从cdn链接了jQuery 2.2.3版,但实际的页面使用的是版本1.7.1.两个版本都可以观察到相同的行为.

更新:

在考虑了下面提供的一些评论和答案之后,我偶然发现了一些令人困惑的事情.用户@gdyrrahitis提出了一个建议,引导我这样做:

function tbody_fade(row_id) {
    $('tbody').load("load_tbody.php", function() {
        $('tbody').fadeIn(0, function() {
          $(this).find(row_id).addClass('green');
        });
    });
}
Run Code Online (Sandbox Code Playgroud)

fadeIn()回调中添加类可以工作,即使持续时间为0ms.因此,这让我想知道......如果元素是理论上反正有什么背景颜色浏览器认为它之前,我补充一点类.所以我记录了background-color:

console.log($(row_id).css('background-color'));
Run Code Online (Sandbox Code Playgroud)

你知道吗?只需获得背景色的颜色就可以了:

function tbody_get_style(row_id) {
    $('tbody').load("load_tbody.php", function() {
        $(row_id).css('background-color');
        $(row_id).addClass('green');
    });
}
Run Code Online (Sandbox Code Playgroud)

只是添加$(row_id).css('background-color');似乎什么都不做的行会导致过渡效果起作用.这是一个演示:

http://so-37035335-b.dev.zuma-design.com/ …

html javascript css jquery css3

12
推荐指数
2
解决办法
916
查看次数

浏览器拒绝javascript play()

我有一个带有输入字段的页面,用于扫描产品。当扫描条形码或在字段中键入SKU时,会发出ajax请求,并且应用程序会根据响应使用播放成功或错误声音HTMLMediaElement.play()

sounds.error.play();
Run Code Online (Sandbox Code Playgroud)

前一阵子工作正常,但现在我收到了这个错误:

only仅当获得用户批准,网站被用户激活或媒体被静音时,才允许自动播放。

其次是:

NotAllowedError:在当前上下文中,用户代理或平台不允许使用play方法,这可能是因为用户拒绝了权限。

由于此页面仅出于扫描SKU的目的而存在,因此,在页面加载时,该输入字段将以编程方式集中显示,从而使最终用户的操作更加轻松。我尝试删除此焦点,以便用户必须单击输入字段,但这似乎无法满足允许播放音频的任何要求

经过更多的实验后,我发现在进行一些额外的用户交互后,声音会播放。例如,如果我创建一个复选框以“启用”声音,然后用户单击它,这似乎就足够了。或者,如果用户在输入元素之外单击,然后再次回到输入元素,那也可以。

满足大多数现代浏览器以允许播放音频的要求是什么?

我知道答案对于不同的浏览器和配置可能会有所不同,但是我找不到对Firefox或Chrome当前版本具有权威性的任何信息。我正在寻找一种解决方法,以使应用程序无需通过额外的单击或其他类型的交互而变得复杂,并且由于我现在已经知道了这一新政策,因此我希望这些修订尽可能不引人注目。

更新:

这是我努力演示该问题的基本示例。刚才我尝试了三种不同的浏览器,它们的行为都有所不同。Firefox的行为如上所述特别重要-在我专注于输入字段,模糊然后单击再次聚焦之前,它不会播放声音:

http://so.dev.zuma-design.com/input-sounds.html

javascript audio firefox google-chrome

12
推荐指数
4
解决办法
1101
查看次数

从字符串中修剪空白ASCII字符"194"

最近遇到了一个非常奇怪的问题,我的数据库包含看似正常的空白字符的字符串,但实际上是其他东西.

例如,应用于trim()字符串:

"TEST "
Run Code Online (Sandbox Code Playgroud)

来找我:

"TEST "
Run Code Online (Sandbox Code Playgroud)

结果是.所以我复制并粘贴字符串中的最后一个字符,然后:

echo ord(' ');
194
Run Code Online (Sandbox Code Playgroud)

194?根据应该是的ASCII表?.所以我在这一点上感到困惑.为什么这个角色看起来trim()像是空格trim()?当失败的时候我怎么能这样?

php whitespace character-encoding

11
推荐指数
3
解决办法
5904
查看次数