小编Jef*_*eff的帖子

[[PromiseValue]]在javascript控制台中意味着什么,以及如何获取它

我有以下功能,试图使用Promises.

var getDefinitions = function() {
    return new Promise(function(resolve) {
        resolve(ContactManager.request("definition:entities"));
    });
}

var definitions = getDefinitions()
Run Code Online (Sandbox Code Playgroud)

definitions 正在回归:

Promise {
    [[PromiseStatus]]: "resolved",
    [[PromiseValue]]: child
}
Run Code Online (Sandbox Code Playgroud)

我想获得PromiseValue的价值,但要求

var value = definitions.PromiseValue; // undefined
Run Code Online (Sandbox Code Playgroud)

给了我一个不确定的结果.

我的问题是双括号是什么PromiseValue意思,我该如何检索它的值[[ ]].

javascript promise es6-promise

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

php $ _GET和未定义的索引

当我尝试在不同的PHP服务器上运行我的脚本时,出现了一个新问题.

在我的旧服务器上,以下代码似乎工作正常 - 即使没有s声明参数.

<?php
 if ($_GET['s'] == 'jwshxnsyllabus')
echo "<body onload=\"loadSyllabi('syllabus', '../syllabi/jwshxnporsyllabus.xml',         '../bibliographies/jwshxnbibliography_')\">";
if ($_GET['s'] == 'aquinas')
echo "<body onload=\"loadSyllabi('syllabus', '../syllabi/AquinasSyllabus.xml')\">"; 
 if ($_GET['s'] == 'POP2')
echo "<body onload=\"loadSyllabi('POP2')\">";
elseif ($_GET['s'] == null)
echo "<body>"
?>
Run Code Online (Sandbox Code Playgroud)

但现在,在我本地计算机上的本地服务器(XAMPP - Apache)上,当没有s定义值时,我收到以下错误.

Notice: Undefined index: s in C:\xampp\htdocs\teaching\index.php on line 43
Notice: Undefined index: s in C:\xampp\htdocs\teaching\index.php on line 45
Notice: Undefined index: s in C:\xampp\htdocs\teaching\index.php on line 47
Notice: Undefined index: s in C:\xampp\htdocs\teaching\index.php on line 49
Run Code Online (Sandbox Code Playgroud)

如果声明了一个值 …

php undefined

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

为什么在页面加载时会立即触发click事件处理程序?

我正在玩一个我想要绑定到所有链接的函数.目前,该功能在页面加载时触发,而不是在我点击链接时触发.

这是我的代码.(showDiv()如果你需要看的话,我可以在函数中过去.)你能告诉我这里做错了什么或傻吗?

$(document).ready(function(){

    $('a.test').bind("click", showDiv());

});
Run Code Online (Sandbox Code Playgroud)

谢谢

jquery bind

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

MySql php:检查Row是否存在

这可能是一件容易的事情,但我是一个业余爱好者,事情本身并不适合我.

我只想查看$ lectureName显示的行是否存在.如果某个行确实存在且其中包含$ lectureName,我希望该函数返回"已分配",否则它应返回"可用".这就是我所拥有的.我很确定它一团糟.请帮忙.

function checkLectureStatus($lectureName)
{
 $con = connectvar();
 mysql_select_db("mydatabase", $con);
 $result = mysql_query("SELECT * FROM preditors_assigned WHERE lecture_name='$lectureName'");
  while($row = mysql_fetch_array($result));
  {
     if (!$row[$lectureName] == $lectureName)
     {
         mysql_close($con);
         return "Available";
     }
      else
     {
        mysql_close($con);
        return "Assigned";
    }
}
Run Code Online (Sandbox Code Playgroud)

当我这样做时,一切都返回可用,即使它应该返回分配.

php mysql

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

使用php __DIR__

我正在尝试创建一个config.php文件来定义一个全局变量,该变量包含一个名为"projectfiles"的目录的路径.我们的想法是,无论文件树在何处,任何文件都可以指向此目录.

我可以用__DIR__它吗?有人愿意给我一个如何运作的例子吗?我在考虑以下内容:

我想在这里定义一个目录:在/config.php文件中

$projectfiles = __DIR__("projectfiles/")
Run Code Online (Sandbox Code Playgroud)

然后我想要一个库文件能够在/venders/library/generalfunctions.php文件中使用这个变量

include("../../../config.php");
$file = $projectfiles/testfile.php
Run Code Online (Sandbox Code Playgroud)

建议?

php constants

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

php file_get_contents授权标头

任何人都可以解释为什么私有bitbucket存储库的授权功能在我的本地机器上运行(运行PHP版本5.3.17),但未在我的远程服务器上授权(运行PHP版本5.3.20)

我本身并没有得到错误 - 我只是从bitbucket得到了一个"禁止"的回应.但是从我的本地服务器运行一切都很好.

function bitBucketConnect($url){
    global $bitPassword;
    global $bitUsername;
    $context = stream_context_create(array(
     'http' => array(
       'header' => "Authorization: Basic " . base64_encode("$bitUsername:$bitPassword")
       )
    ));

 // Make the request
 return file_get_contents($url, false, $context);
 }
Run Code Online (Sandbox Code Playgroud)

php file-get-contents

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

将MySQL Workbench链接到我的远程服务器

我刚刚下载了MySQL Workbench.

但我不太明白如何将其与远程服务器上的数据库同步.

工作台要求"主机名",所以我提供了我的远程服务器的主机名.我指的是3306端口.

然后我提供用户名.这是我登录PhpAdmin时使用的用户名 - 我应该使用另一个吗?

然后我提供了一个密码,也就是我用于PhpAdmin的密码.

但这不起作用.

奇怪的是,错误总是告诉我我的用户名是: username@current_network_im_using_to_access_the_internet

但这似乎不对 - 在phpAdmin我的用户名说username@localhost.

我不太清楚该怎么做.

你能帮助我吗?

mysql mysql-proxy mysql-workbench

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

使用xslt只更改少量XML元素,同时保留其他所有内容

我有XSLT的以下问题.

在XML文档中,我<h></h>在不同级别的<div></div>标记中嵌入了几个标记.

为了将不同div部分中的所有内容更改<h></h><h1></h1> <h2></h2> <h3></h3>相应的内容,我编写了以下XSLT脚本.

<xsl:template match="//TU:div/TU:h">
    <h1><xsl:apply-templates/></h1>
</xsl:template>

<xsl:template match="//TU:div/TU:div/TU:h">
    <h2><xsl:apply-templates/></h2>
</xsl:template>
Run Code Online (Sandbox Code Playgroud)

等等....问题是我希望其他一切保持完全相同.我只希望<h></h>标签改变.

不幸的是,当我处理文档时,<h></h>标签会根据需要改变,但所有其他元素都会消失.

除了简单地<xsl:template>为每个元素编写一个之外,还有另一个解决这个问题的方法,这样每个给定的元素都会被自己替换掉吗?

例如对于元素<p></p>:

<xsl:template match="//TU:p">
    <p><xsl:apply-template/></p>
</xsl:template>
Run Code Online (Sandbox Code Playgroud)

我需要做这样的事情来保存每个元素,还是有更好的方法?

谢谢你的帮助.

xml xslt

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

用Nokogiri和Ruby命名元素"text"

尝试使用Nokogiri构建XML文档时遇到一个小问题.

我想将其中一个元素称为"文本"(请参阅​​下面粘贴代码的最底部).通常,为了创建一个新元素,我会做类似下面的事情xml.text- 但它似乎.text是Nokogiri已经用来做其他事情的方法.因此,当我写这一行时,xml.textNokogiri并没有创建一个名为的新元素,<text>而只是将文本写成元素的内容.我怎样才能让Nokogiri真正制作一个叫做元素的元素<text>

builder = Nokogiri::XML::Builder.new do |xml|   
  xml.TEI("xmlns" => "http://www.tei-c.org/ns/1.0"){
    xml.teiHeader {
        xml.fileDesc{
            xml.titleStmt{
                xml.title "Version Log for #{title}"
                xml.author "Jeffrey C. Witt"
            }
            xml.editionStmt{
                xml.edition('n' => "#{ed_no}") {
                    xml.date('when' => "#{newDate}")
                    }
                }
            xml.publicationStmt{
                xml.publisher "#{publisher}"
                xml.pubPlace "#{pubPlace}"
                xml.availability("status" => "free") {
                    xml.p "Published under a Creative Commons Attribution ShareAlike 3.0 License"
                }
                xml.date("when" => "#{newDate}") 
            }   
            xml.sourceDesc {
                xml.p "born digital"
            }
        }
    }
    xml.text "test"{
      xml.body …
Run Code Online (Sandbox Code Playgroud)

ruby nokogiri

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

sinatra用ctrl z停止 - 现在它不会重启,因为它说端口4567已被使用

在运行Sinatra时,我不小心点击了ctrl + z来停止服务器而不是ctrl + c Ctr + z似乎停止了应用程序.但现在我无法重启它.请帮忙.

   ^Z
[1]+  Stopped                 ruby app.rb
jeffrey-mac:scta JCWitt$ ruby app.rb 
[2014-01-23 11:34:24] INFO  WEBrick 1.3.1
[2014-01-23 11:34:24] INFO  ruby 1.9.3 (2012-04-20) [x86_64-darwin11.4.2]
[2014-01-23 11:34:24] WARN  TCPServer Error: Address already in use - bind(2)
[2014-01-23 11:34:24] WARN  TCPServer Error: Address already in use - bind(2)
[2014-01-23 11:34:24] WARN  TCPServer Error: Address already in use - bind(2)
== Someone is already performing on port 4567!
Run Code Online (Sandbox Code Playgroud)

ruby sinatra

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