小编Man*_*gir的帖子

如何使用会话ID获取会话变量

我有我的应用程序的会话ID.现在我想通过使用此会话ID获取所有会话变量.

我曾经<?php echo session_id()?>获得会话ID,但是如何使用此会话ID获取所有会话对象值?

php session

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

在php中检查数组是否为null

我有一个如下所示的数组,它是通过解析xml url生成的.

阵列是

Array
  (
 [Tags] => SimpleXMLElement Object
    (
        [0] => 

    )
  )
Run Code Online (Sandbox Code Playgroud)

数组名称是$result.现在我想检查一下,如果像上面那样收到数组,我想打印一条失败的消息.但是如果在条件下如何检查这个数组呢?

php arrays null

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

如何使用jQuery重置特定的表单字段

我想知道如何使用jQuery重置特定的表单字段.

我正在使用以下功能:

function resetForm(id) {
    $('#'+id).each(function(){
        this.reset();
    });
}
Run Code Online (Sandbox Code Playgroud)

但它正在重置所有字段.有没有办法使用jQuery或JavaScript重置特定字段?我想只重置一个特定的字段.

javascript jquery

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

使用jquery或javascript查找页面上的所有表单名称

如何使用jquery在页面上存在所有表单名称??? 我可以使用jquery输入选择器来查找页面上的所有表单.例如,我在页面上有一个表格,如下所示

<form name="searchForm" id="searchForm" action="">
<input type="text" name="inputname" />
</form>
Run Code Online (Sandbox Code Playgroud)

现在我想使用jquery找到表单名称"searchForm".那怎么能这样做?

请帮我.谢谢.

javascript jquery

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

在ExpressJS中仅接受JSON内容类型的发布或放置请求

我正在使用ExpressJS框架来创建REST API.所有API都应该只接受POST,PUT和PATCH类型的请求方法的JSON请求体.

我正在使用express.bodyParser模块来解析JSON主体.它工作得很好.

app.use(bodyParser.urlencoded({ extended: false }));
app.use(bodyParser.json());
Run Code Online (Sandbox Code Playgroud)

如果我的JSON正文中有任何语法错误,我的上一个错误处理程序中间件被完美地调用,我可以自定义响应400 Bad Request.

但是,如果我传递内容类型而不是application/json类似的东西(text/plain,text/xml,application/xml),那么正文解析器模块会在没有错误的情况下解析它,并且在这种情况下不会调用我的错误处理程序中间件.

我的上一个错误处理程序中间件

export default function(error, request, response, next) {
  if(error.name == 'SyntaxError') {
    response.status(400);
    response.json({
      status: 400,
      message: "Bad Request!"
    });
  }
  next();
}
Run Code Online (Sandbox Code Playgroud)

我想要做的是在内容类型不是的情况下调用我的最后一个错误处理程序applicaition/json.

node.js express body-parser

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

使用 SQL 关键字作为列的别名

我正在执行以下查询,但它给出了语法错误。因为关键字key是在SQL中注册的

SELECT `id` AS key, `country_name` AS value FROM countries
Run Code Online (Sandbox Code Playgroud)

我也尝试使用这样的括号,但它不起作用:

SELECT `id` AS [key], `country_name` AS value FROM countries
Run Code Online (Sandbox Code Playgroud)

如何处理?

mysql sql select alias keyword

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

ZF2注册了无效的工厂

我在ZF2应用程序中拥有以下类和模块配置,并且出现以下错误:

While attempting to create applicationformuserform(alias: Application\Form
\UserForm) an invalid factory was registered for this instance type.
Run Code Online (Sandbox Code Playgroud)

UserFormFactory.php

<?php

namespace Application\Factory\Form;

use Zend\ServiceManager\FactoryInterface;
use Zend\ServiceManager\ServiceLocatorInterface;
use Application\Form\UserForm;

class UserFormFactory implements FactoryInterface {

    public function createService(ServiceLocatorInterface $serviceLocator) {
        $services         = $serviceLocator->getServiceLocator();
        $entityManager    = $services->get('Doctrine\ORM\EntityManager');

        $form = new UserForm($entityManager);

        return $form;
    }
}

?>
Run Code Online (Sandbox Code Playgroud)

UserForm.php

<?php

namespace Application\Form;

use Zend\Form\Form;
use Zend\InputFilter\InputFilterProviderInterface;
use Doctrine\ORM\EntityManager;

class UserForm extends Form implements InputFilterProviderInterface {

    protected $entityManager;

    public function __construct(EntityManager $entityManager) {
        parent::__construct();
        $this->entityManager = $entityManager; …
Run Code Online (Sandbox Code Playgroud)

zend-framework-modules zend-framework2 zend-form2

5
推荐指数
2
解决办法
5028
查看次数

使用纯 JavaScript 从自定义事件处理程序收集数据

我正在用纯 Javascript 创建一个自定义事件并将其附加到 DOM 元素。该元素对同一事件有多个事件侦听器。我写的代码是:

var element = document.getElementById('demo');

element.addEventListener("myCustomEvent", function(e) {
    console.log("myCustomEvent first handler triggered");
});
element.addEventListener("myCustomEvent", function(e) {
    console.log("myCustomEvent second handler triggered");
    e.data['otherKey'] = 'other value';
    return e.data;
});

// Trigger the event
var event = new CustomEvent("myCustomEvent", {
  data: {
    firstKey: 'first Value'
  }
});
element.dispatchEvent(event);
Run Code Online (Sandbox Code Playgroud)

现在我想要的是,从最后一个事件处理程序获取数据,如下所示:

var modifiedData = element.dispatchEvent(event);
Run Code Online (Sandbox Code Playgroud)

虽然我知道上面的行可能不正确,但我想要类似的东西。如果我使用 jQuery,有一个非常简单的事情,比如$.triggerHandler我可以使用它迭代特定事件的所有侦听器,并给出最后一个处理程序的返回值(如果有)。

但我想用纯 Javascript 来做。对于这样的事情有什么解决办法吗?

javascript event-handling dom-events

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

我们可以使用node-gyp在Linux上为win32平台重建node本机模块吗?

我创建了一个电子应用程序,它使用两个 NodeJS 本机模块node refnode ffi. 该应用程序目前正在 Windows 上开发,Windows 可执行文件是在electro-builder的帮助下生成的。这一切都工作得很好,并且该应用程序已正确安装在 Windows 中。由于两者ffi and ref都是本机模块,我只是使用electro-rebuild为平台 win32 重建它们(我猜内部使用node-gyp)。

但问题是,我的 CI/CD 服务器是 Ubuntu 16,我需要在那里生成 Windows 可执行文件。如果我的应用程序没有节点的本机插件,它工作得很好,但是包含本机模块,会生成 exe 文件,但在启动时它说%1 不是 win32 应用程序,原因是,本机 deps 是为Linux平台而不是windows。

所以我想知道,有没有办法在 Linux 机器上为 win32 平台重建节点本机模块,或者如果不可能,那么我们如何.node跨平台使用预构建的文件。

node.js node-gyp node-ffi electron electron-builder

5
推荐指数
0
解决办法
344
查看次数

如何在 Jest 中监视默认道具功能

我正在尝试测试一个函数类型的默认道具,但不确定如何使用 Jest 模拟或间谍来做到这一点:

尝试以下测试:

it("should call default toggle function prop on click of footer button", () => {
            const wrapper = shallow(
                <InfoModal
                    isOpen={true}
                    message="Primary message"
                    secondaryMessage="Secondary message"
                />
            );
            const footerButton = wrapper.find("ModalFooter Button");
            const fn = jest.spyOn(wrapper.props(), "toggle");
            footerButton.simulate("click");
            wrapper.update();
            expect(fn).toHaveBeenCalled();
        });
Run Code Online (Sandbox Code Playgroud)

它说TypeError:无法分配给对象“[object Object]”的只读属性“toggle”,其中 toggle 是作为InfoModal.

我们如何测试已设置为默认值而非用户定义的函数 prop。

reactjs jestjs enzyme

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