小编sym*_*ean的帖子

如何检测后退按钮和新窗口?

我毫不怀疑这些可能是在互联网上记录并由谷歌索引的 - 但是在浏览了关于禁用功能的讨论链接的页面和页面后,我想我会问,是否有人可以仅仅提供有用的答案检测他们的用法.

关于禁用后退按钮的更好文章之一中描述的方法仅通过创建页面转换来起作用 - 因此对检测没有多大用处.

window.history.next的存在可能提供了一种检测后退按钮的机制 - 但它有多广泛的支持?它需要不寻常的特权吗?

乔纳森对这篇文章的回答看起来很有希望 - 但预先假设我可以在第一次登陆时设置窗口名称 - 我想我可以使用缺少cookie来检测第一次命中.还有其他想法吗?

TIA

javascript window back-button new-operator

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

jQuery getScript问题

尽管这似乎是很多人似乎甲肝一直就堆栈溢出遇到这种麻烦,我还没有看到它为什么会错的描述(1,2,3)

我的代码(用于测试目的):

jQuery.getScript("res/fader.js", function () { alert("loaded"); });
Run Code Online (Sandbox Code Playgroud)

在Chrome(16)中完美运行.在Firefox(11)中,firebug控制台显示了所请求的脚本和预期的响应(包括application/javascript的mimetype).但没有警报.没错.没有.

如果我随后尝试在脚本中引用应该加载的内容,它仍然是未定义的(这是在onload事件之后几秒钟,并且在控制台显示已经检索到脚本之后).

更新

我正在使用jQuery 1.9.1

javascript firefox jquery

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

使用自定义 my.cnf 运行 mysql 客户端

我有一个调用 mysql 客户端来运行各种任务的应用程序。由于各种原因,mysql 作为运行应用程序的用户被调用(这是安全模型的核心,如果更改也会影响功能)。目前,mysql 用户名和密码是通过命令行传递给客户端程序的——显然这不是理想的情况。

覆盖 $HOME/my.cnf 文件并不是理想的解决方案 - 可能有多个并发任务针对不同(本地和/或远程)数据库运行。对数据库的访问必须经过身份验证。

有没有办法将自定义 my.cnf 文件(或其他安全地传递用户名和密码的方式)传递到 mysql 客户端,而无需模拟交互式登录?

(使用 --defaults-file 或 --defaults-extra-file 提供 my.cnf 文件会导致mysql: unknown variable 'username=my_db_user'

mysql command-line-interface

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

oracle查询 - ORA-01652:无法扩展临时段,但只能在某些版本的sql*plus中扩展

这个让我很困惑.我编写了一个从我的开发客户端运行良好的查询但在生产客户端上失败并出现错误"ORA-01652:无法扩展临时段......".在这两种情况下,数据库和用户都是相同的.在我的开发机器(MS Windows)上,我有SQL*PLUS(版本9.0.1.4.0)和Toad 9.0(都使用了oci.dll的9.0.4.0.1版本).两者都运行代码没有错误.

但是,当我在同一个数据库上运行相同的文件时,使用来自不同机器的相同用户名/密码,这次版本10.2.0.4.0(来自10.2.0.4-1 Oracle即时客户端)我收到错误.

它确实可重复发生.

不幸的是,我只能访问数据库上的字典视图,这些视图设置为只读(甚至无法获得解释计划!).

我试过通过调整查询来解决这个问题(我怀疑有一个大的中间结果集随后被修剪掉了)但是没有设法改变任何一个客户端的行为.

有可能在计算机上部署不同版本的客户端导致问题 - 但目前看起来像是降级到以前的版本.

有任何想法吗?

TIA

更新

根据Gary的回答,我看了一下glogin.sql脚本 - 唯一的区别是'SET SQLPLUSCOMPATIBILITY 8.1.7'在工作客户端上存在但在失败的客户端上没有 - 但添加它并没有解决问题.

我也试过了

alter session set workarea_size_policy=manual;
alter session set hash_area_size=1048576000;
Run Code Online (Sandbox Code Playgroud)

alter session set sort_area_size=1048576000;
Run Code Online (Sandbox Code Playgroud)

无济于事:(

更新2

我设法找到了相同的行为,这次是与Oracle 8i后端交谈.在这种情况下,数据库是RW.这让我可以确认,正如我所怀疑的那样,不同的客户会产生不同的计划.但为什么????

看看'SHOW PARAMETERS'的输出,两个客户都报告了完全相同的设置!

linux oracle client sqlplus ora-01652

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

如何在查询中获取MySQL状态

是否可以在MySQL查询中使用服务器状态变量?

我可以从"显示状态"看到各种指标,但我如何计算派生值(例如查询缓存命中率)

show global status like 'Qcache_inserts';
show global status like 'Qcache_not_cached';
show global status like 'Qcache_hits';
Run Code Online (Sandbox Code Playgroud)

我能得到Qcache_hits /(Qcache_hits + Qcache_inserts + Qcache_not_cached)吗?

mysql database

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

MySQL查询在phpMyAdmin中工作,在PHP中失败

SELECT SQL_CALC_FOUND_ROWS * 
FROM (
   SELECT * 
   FROM tbl_substances
   LIMIT 0 , 25
) AS s
LEFT JOIN (
   SELECT subid, list1, list2, list3, list4, list5
   FROM tbl_substances_lists
   WHERE orgid =  '1'
) AS x ON s.subst_id = x.subid
LEFT JOIN (
   SELECT subid, info
   FROM tbl_substances_info
   WHERE orgid =  '1'
) AS y ON s.subst_id = y.subid
Run Code Online (Sandbox Code Playgroud)

这个想法是你有一个物质的主列表(tbl_substances)然后如果你在tbl_substances_lists或tbl_substances_info中输入了关于它们的任何信息,那么也可以显示(只要你使用正确的组织ID登录)

显示所有物质非常重要,即使它们没有自定义信息,这就是我使用LEFT JOIN的原因.

此查询在phpMyAdmin中完美运行,但当我在我的数据库脚本中使用它时,我得到:

您的SQL语法有错误; 查看与您的MySQL服务器版本对应的手册,以便在''附近使用正确的语法.在第2行,选择subid,list1,list2,list3,list4,list5 FROM tbl_substances_'

我不确定问题是否是显而易见的我错过了,或者是否与这个代码使用mysql_query的事实有关,我知道这个问题已被弃用和老式等等.

我不是数据库专家,所以如果这个查询看起来很难看,那我就提前道歉!

编辑2

这是构建此查询的代码(它根据您要搜索的内容动态构建,但这是基本形式)

    /*
     * Length
     */

    if ( isset( $_POST['iDisplayStart'] ) && …
Run Code Online (Sandbox Code Playgroud)

php mysql phpmyadmin

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

mysqli_poll() - 第三个参数是什么?

在缺少函数原型之外的任何文档的情况下,我很难找到mysqli_poll()函数的第三个参数.

int mysqli_poll ( 
     array &$read , 
     array &$error , 
     array &$reject , 
     int $sec 
     [, int $usec ] )
Run Code Online (Sandbox Code Playgroud)

看一下(C)源代码,看来用$资源填充$ reject数组......

CONN_GET_STATE((*p)->data) <= CONN_READY 
   || CONN_GET_STATE((*p)->data) == CONN_QUIT_SENT
Run Code Online (Sandbox Code Playgroud)

这是否意味着与服务器的连接正在关闭/关闭?

别的什么?

是否应预先设置资源以检查是否断开连接?或者它们会自动从$ read和$ error中添加?

php mysqli asynchronous

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

在Apache中的第二个请求时间记录

虽然我可以获得处理请求所花费的时间的微秒分辨率(%D),以帮助重建请求序列,我想看一下与特定页面生成的多个请求的时间相关的请求.但据我所知,%t说明符仅提供精确到最接近的秒.这使得无法重建原始事件序列.

有没有其他方法可以在我的access_log文件中获取此信息?

TIA

apache

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

从Javascript读取当前文档的大小

我开始与Boomerang一起测试性能。这是非常有前途的。尽管它可以让我测量延迟,带宽和页面加载时间,但我也对尝试获取在服务器端呈现初始HTML页面所花费的时间感兴趣。记录浏览器开始解析javascript的时间(很接近它最初到达的时间)以便获得服务器时间的估计似乎很简单,我需要确定要减去多少网络时间。因此,我需要知道html文档的大小。

我该如何用Javascript分辨呢?

该文档对象似乎不具有innerHtml属性

我试过了

totsize=document.HEAD.innerHTML.length + document.BODY.innerHTML.length;
Run Code Online (Sandbox Code Playgroud)

HEAD和BODY实体出现在Firefox的DOM浏览器中-但是当我尝试上面的代码时,我得到了一个未定义的错误-也尝试了'head'-无济于事。

有任何想法吗?

(请注意,JavaScript位于单独的文件中,并且在大多数情况下会被缓存-因此这不是一个大问题)。

我确实尝试了google-但是我得到的页面很多,它们描述了html元素的屏幕尺寸和窗口尺寸:(

TIA

javascript performance dom

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

将 URL 规范化为相同形式的 PHP

我想根据列表检查 URL 以做出有关处理的选择(这将查看数据流,而不是作为应用程序中的路由器)但是 HTTP 使得以多种不同方式表示相同的URL变得非常容易,例如(改编自RFC 2616):

http://example.com/~smith/home.html
http://example.com:80/~smith/home.html
http://EXAMPLE.com/%7Esmith/home.html
http://EXAMPLE.COM/%7esmith/home.html
Run Code Online (Sandbox Code Playgroud)

都代表相同的目标资源。

我希望能够将 URL 转换为规范形式...

  • 主机名的情况要一致
  • 支持不是方案、用户名、密码、端口、路径、查询和片段的完整元组的 URL
  • 明智地处理隐式端口和显式端口号
  • 得到的 URL ascii 用 %.... 适当的扩展序列编码
  • 明智地处理路径中的 './' 和 '../'
  • 可选地对查询中的变量进行一致排序

有没有一种简单的方法可以始终如一地做到这一点?

(似乎这些parse_url()都没有。)

php url

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

找不到命令:P​​HP exec()

这真让我抓狂.我需要php执行一个命令来重启节点中运行的脚本.我正在使用一个名为forever的节点应用来运行所述脚本.代码如下:

<?php 
  echo '<pre>';
  echo exec('sudo -u dalton forever restart botti.js 2>&1');
  echo '</pre>';
?>
Run Code Online (Sandbox Code Playgroud)

但是,当我运行时,我得到了 sudo: forever: command not found

接下来,我尝试which forevertype forever,这两者给我:
forever: /usr/local/bin/forever

我编辑我的代码:
echo exec('sudo -u dalton /usr/local/bin/forever restart botti.js 2>&1');

编辑:输入错误后,错误现在是:
/usr/bin/env: node: No such file or directory

我的智慧结束了.有任何想法吗?

php shell node.js

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

除非单击"编辑"按钮,否则setinterval重新加载php页面

现在我在jquery中有一个间隔函数,每隔几秒重新加载一个页面:

setInterval(function () {
$('div#tab2').load('morefour.php?doc=' + encodeURIComponent(ktitle));
}, 3000);
}); 
Run Code Online (Sandbox Code Playgroud)

我现在真正想做的是点击这个输入:

<input type='image' class='edit' src='edit.png'>
Run Code Online (Sandbox Code Playgroud)

停止setinterval函数.

jquery

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