小编Wer*_*ner的帖子

MySql:ORDER BY父母和孩子

我有一张桌子:

+------+---------+-
| id   | parent  |
+------+---------+
| 2043 |    NULL |
| 2044 |    2043 |
| 2045 |    2043 |
| 2049 |    2043 |
| 2047 |    NULL |
| 2048 |    2047 |
| 2043 |    2047 |
+------+---------+
Run Code Online (Sandbox Code Playgroud)

它显示了一个简单的2级"亲子" - 核心.我怎样才能通过SELECT语句来获取上面列表中的顺序,这意味着:第一个父项,第一个父项的子项,第二个父项,第二个父项的子项等等(如果我有,我可以添加为孩子们订购BY ...我希望).是否可以添加排序字段?

mysql sql sql-order-by

14
推荐指数
2
解决办法
9768
查看次数

HTML5:触发popstate时刷新页面

我有一个像ajax搜索表单:

网址:/ search /

=>用户输入搜索词并单击按钮

=>搜索完成并通过页面div中的ajax显示结果

但是:我还希望用户能够将URL复制并粘贴给朋友并浏览以前的搜索.因此,当触发搜索时,我会更改浏览器地址栏中的URL

/搜索/

/搜索/ Q = yourkeyword

使用:

window.history.pushState("", "Search for "+keyword, "/search/?q="+keyword);
Run Code Online (Sandbox Code Playgroud)

这会将浏览器地址栏中的网址更改为/ search /?q = yourkeywords,并且工作正常.

现在,点击后退按钮,浏览器地址栏再次显示/ search /,这很好.但是页面内容没有重新加载,它仍然显示来自/ search /?q = yourkeyword的结果.

所以我补充说:

window.addEventListener("popstate", function(e) 
{   location.reload();
});
Run Code Online (Sandbox Code Playgroud)

这是正确的方法吗?它在FF和Chrome等桌面浏览器中运行良好,但是在iOS中,popstate事件是在/ search /上首次加载searchform时触发的,导致该页面无法重新加载.

什么是正确的方法呢?

javascript ajax html5

13
推荐指数
2
解决办法
5435
查看次数

PHP 5.4:禁用警告"从空值创建默认对象"

我想将代码从PHP 5.2迁移到5.4.到目前为止这个工作正常,只是我使用的所有代码都广泛使用了一个没有任何初始化的成员的对象,如:

$MyObject->MyMember = "Hello";
Run Code Online (Sandbox Code Playgroud)

这会产生警告:"从空值创建默认对象"

我知道解决方案是使用:

$MyObject = new stdClass();
$MyObject->MyMember = "Hello";
Run Code Online (Sandbox Code Playgroud)

但是在我的所有代码中改变这一点将是很多工作,因为我在不同的项目中多次使用它.我知道,这不是很好的风格,但遗憾的是,我无法在接下来的几周内将其添加到我的所有代码中.

我知道我可以将php error_reporting设置为不报告警告,但我希望能够仍然获得其他警告和通知.启用或禁用E_STRICT似乎不会影响此警告.那么有没有办法禁用此警告?!

php error-reporting

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

PHP:获取optipng的输出

我正在使用jpegoptim和optipng来优化浏览器中调用的php脚本中的图像.我这样做:

$s = exec('/myoptimizer/jpegoptim -m60 -o --strip-all /httpd/images/myimage.jpg');
print $s;
Run Code Online (Sandbox Code Playgroud)

这工作正常,输出:

/httpd/images/myimage.jpg 600x90 24bit P JFIF [OK] 14572 --> 14542 bytes (0.21%), optimized. 
Run Code Online (Sandbox Code Playgroud)

现在和optipng一样:

$s = exec('/myoptimizer/optipng -o7 -preserve -strip all /httpd/images/myimage.png /httpd/images/myimage.png', $aOutput, $ret);

var_dump($s);
var_dump($a);
var_dump($ret);

But:
$s is empty.
$a is empty array.
$ret is 0.
Run Code Online (Sandbox Code Playgroud)

在控制台上执行相同的命令,我得到:

** Processing: /httpd/images/myimage.png
60x18 pixels, 4x8 bits/pixel, RGB+alpha
Input IDAT size = 2235 bytes
Input file size = 2292 bytes

Trying:
  zc = 9  zm = 9  zs = 0 …
Run Code Online (Sandbox Code Playgroud)

php

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

在 GA4 中显示简单的交易列表?

在Universal Analytics中,您只需转到“转化”->“电子商务”->“交易”即可查看按交易ID排序的每笔交易的列表。

这在 GA4 中是如何完成的?

我们似乎在 GA4 中遗漏了一些交易,并且想找出哪些交易未正确报告。

google-analytics-4

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

Mysql 删除用户并授予多个主机

我向我的 mysql-db 添加了一个用户,并授予从多个主机访问的权限,例如:

GRANT ALL PRIVILEGES ON `db`.* TO 'dbuser'@'host1';
GRANT ALL PRIVILEGES ON `db`.* TO 'dbuser'@'host2';
GRANT ALL PRIVILEGES ON `db`.* TO 'dbuser'@'host3';
GRANT ALL PRIVILEGES ON `db`.* TO 'dbuser'@'host4';
....
Run Code Online (Sandbox Code Playgroud)

完全删除用户的最短方法是什么?我试过:

drop user 'dbuser'@'%';
ERROR 1396 (HY000): Operation DROP USER failed for 'dbuser'@'%'

drop user 'dbuser';
ERROR 1396 (HY000): Operation DROP USER failed for 'dbuser'@'%'

show grants for 'dbuser';
ERROR 1141 (42000): There is no such grant defined for user 'dbuser' on host '%'
Run Code Online (Sandbox Code Playgroud)

我想, % wouzld 被视为通配符。Butr似乎是为每个主机删除用户的唯一方法,例如: …

mysql grant

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

Eclipse和PHPUnit:“导入的PHPUnit \ Framework \ TestCase无法解析”

我从PHPUnit开始,到目前为止它工作正常。我只有一个问题:Eclipse(Oxygen.3)在这一行中告诉我:

use PHPUnit\Framework\TestCase;
Run Code Online (Sandbox Code Playgroud)

“无法解析导入的PHPUnit \ Framework \ TestCase”

我去了Window-> Preferences-> PHP-> Tools-> PHPUnit并将路径添加到我的phpunit.phar。但这没有帮助。

我去了Window-> Preferences-> PHP-> Source Paths-> Libraries并尝试导入我的phpunit.phar。但这会导致错误“所选文件不是有效的用户库数据文件”。

还有其他想法如何摆脱这个错误?

eclipse phpunit

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

Schema.org:使用Microdata,RDFa还是JSON-LD?

使用http://www.schema.org/Product的特定格式是否有任何优点/缺点?像"Searchengines比JSON-LD更了解Microdata"之类的东西?我想使用JSON-LD,因为它不会弄乱你的html代码,但我不确定使用微数据是否会更好地关注searchengines.

schema.org

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

列表中的项目从上到下而不是从左到右

我有一个按字母顺序排列的国家/地区列表,例如:

Albania
Andorra
Armenia
Austria
Azerbaijan
Belarus
Belgium
Bosnia and Herzegovina
Bulgaria
Croatia
Cyprus
Czech Republic
Denmark
Estonia
Finland
France
Georgia
Germany
Greece
...
Run Code Online (Sandbox Code Playgroud)

我在列表中显示它们:

<ul class="mylist">
  <li>Albania</li>
  <li>Andorra</li>
  <li>Armenia</li>
  <li>Austria</li>
  <li>Azerbaijan</li>
  ...
</ul>
Run Code Online (Sandbox Code Playgroud)

该列表在大型显示屏上显示4列:

ul.mylist li {
    float: left;
    width: 25%;
}
Run Code Online (Sandbox Code Playgroud)

和小显示器上的2:

ul.mylist li {
    float: left;
    width: 50%;
}
Run Code Online (Sandbox Code Playgroud)

这导致像(大显示)列表:

Albania     Andorra  Armenia  Austria
Azerbaijan  Belarus  Belgium  Bosnia and Herzegovina
Bulgaria    Croatia...
Run Code Online (Sandbox Code Playgroud)

好的,现在到了棘手的部分:显示的国家数量可能会因过滤选项而有所不同.我想以另一种方式(从上到下,从左到右)对国家进行排序,如下所示:

Albania     Bosnia and Herzegovina Finland   [4th col]
Andorra     Bulgaria               France    ...
Armenia     Croatia                Georgia …
Run Code Online (Sandbox Code Playgroud)

html css css3 multiple-columns responsive-design

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

在 tcpdf 中显示复选标记 ✓

我正在使用TCPDFs writeHTML 将一些 html 代码转换为 pdf。到目前为止,这工作正常,只是复选标记(&#x2713)被转换为问号而不是...好吧,复选标记;-) PDF 被创建为UTF-8,但输入复选标记本身和十六进制表示都没有导致显示正确的复选标记。我尝试使用TCPDF 附带的Helvetica 和 Times字体,但两者都只显示 ?。知道如何将复选标记添加到 PDF 中吗?

php pdf fonts tcpdf

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

ORDER BY单词开头或内场

我在mysql-db上有一个ajax-search.示例:搜索我查询的"man":

SELECT id FROM table WHERE name LIKE '%man%;
Run Code Online (Sandbox Code Playgroud)

我现在想要对结果进行排序,以便按字母顺序从搜索开始所有结果:

man
mankind
Run Code Online (Sandbox Code Playgroud)

之后,我想让所有结果按字母顺序宽度搜索INSIDE,如:

iron man
woman
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?

mysql sql-order-by

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

PHP:在字符串中为每个数字加1

我有一个字符串:"交货时间为3-4天.如果您选择'快递',交货时间将为1-2天.在30天内付款."

如何在不重新创建字符串的情况下为字符串中的每个数字添加1天?结果应该是:"交货时间为4-5天.如果您选择'快递',交货时间将为2-3天.在31天内付款."

php regex

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