小编Jér*_*eil的帖子

如何集成nodeJS + Socket.IO和PHP?

我最近一直在寻找,找到一个在nodeJS和PHP之间进行通信的好方法.这是一个想法:nodeJS仍然很新,只用它来开发一个完整的应用程序可能有点棘手.此外,您可能只需要项目的一个模块,如实时通知,聊天,......您希望使用PHP管理所有其他内容,因为它可能对您来说更容易(并且您可以利用现有的框架,如CodeIgniter或Symfony).

我想有一个简单的解决方案; 我不想使用cURL或第三台服务器在Apache和Node服务器之间进行通信.我想要的是能够在简单的Javascript,客户端从节点捕获事件.

我没有找到任何完整的答案,大部分时间客户端都是由节点服务器运行的,因此在我的情况下不适用.所以我抓住了所有可能的主题,最后找到了答案; 我会尝试分享这个,并指出一点都清楚.

希望这可以帮助一些人!;)

php real-time node.js socket.io

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

只有一个身份验证点的多站点

对于未来的项目,我正在寻找一种使用Symfony2管理多站点开发的方法.实际上,每个站点都将位于不同的子域中,但工作方式相同; 只有风格才会改变一点.

问题是:身份验证对所有子网站都是通用的,并由主站点(www.mydomain.com)管理.然后,每个多站点都有自己的数据库.

是否可以使用Symfony2这样做?我知道可以使用多域,但我不知道身份验证系统如何.你有关于如何进行的想法吗?

谢谢 !

symfony

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

Bootstrap popover.toggle()只显示

我正在尝试集成一个twitter bootstrap popover; 我被迫使用javascript API,因为一些动态元素是通过Ajax加载的,也应该做出反应.

基本上,这是一个应该做出反应的示例标记:

<a data-container="#appConfigDialog" data-toggle="popover" data-placement="top" 
   data-content="&lt;img src=&quot;URL&quot; /&gt;"
   data-html="true" href="#" 
   class="popoverFileSee btn btn-default">See</a>
Run Code Online (Sandbox Code Playgroud)

URL正好由正确的URL替换

我的JS:

$( document ).on( "click", ".popoverFileSee", function() {
    $( this ).popover( "toggle" );      
    return false;
});
Run Code Online (Sandbox Code Playgroud)

这是我想要实现的行为:

  • 首次单击时,弹出窗口显示
  • 当打开的弹出窗口发生单击时,它应该关闭它

这不是"切换"的目的吗?这个代码示例中有什么问题,或者我应该在我的应用程序的其他地方检查?

谢谢

编辑:现在,它总是显示弹出窗口,即使它已经打开奇怪的事情:如果我添加alert( "test" );我的回调函数,那么它的工作原理..

jquery popover twitter-bootstrap

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

删除已删除的对象:行为?

我想知道如果我尝试对delete已经删除的指针执行操作,或者可能尚未分配,会有什么问题?我读过两件事:第一,delete操作员会做一些检查,我们不需要检查指针是否为空; 然后,我读到它可能导致未知的行为..

我问它,因为我使用了一些包含Qt对象属性的个人对象; 我认为Qt会删除关闭窗口时关联的所有小部件,但我不确定并且仍然如此:如果在窗口关闭之前软崩溃,我们必须手动删除所有对象.

那么,最好的解决方案是什么?那样的东西?

if( my_object )
    delete my_object;
Run Code Online (Sandbox Code Playgroud)

它能避免危险的行为吗?

c++ pointers memory-management delete-operator

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

FOSUserBundle有多种用户类型

我正在构建一个应用程序,我有(至少)两种不同的用户类型,比如买家和卖家.每个用户类型都应该有自己的逻辑(注册表单/进程,配置文件,权限......),但我想为每个用户使用FOSUserBundle,以便在某些点上进行通用管理.

我实际上被注册表格封锁了; 碰巧我不能在FOSUserBundle中声明不同的形式,经过一些研究似乎是不可能的.我发现的一些答案建议使用我自己的注册表,但随后

  1. 如何将其与FOSUserBundle链接?

  2. 我应该在控制器/表单中填充用户表吗?这样,不同的用户会将用户从FOSUserBundle中删除,然后我应该自己管理不同的表单,而不是从FOSUserBundle扩展它们?

谢谢你提前

symfony fosuserbundle

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

在Jersey过滤器中注入EJB

我目前正在开发一个应用程序,其中Jersey JAX-RS作为后端,AngularJS作为前端; 我需要一种身份验证,因此对于每个请求,我都会发送一个应该由后端验证的令牌.为此,我决定创建一个Jersey过滤器来查找该令牌,然后调用我的AuthenticateService来检查用户是否可以进行身份​​验证.然后通过@RolesAllowed注释管理授权.

这是我的问题:我无法在Jersey过滤器中注入EJB,因为它可以很好地处理资源.但是使用过滤器,服务始终保持为null

知道怎么骗它吗?谢谢

过滤代码:

@Provider
@Priority( Priorities.AUTHORIZATION )
public class AuthenticationFilter implements ContainerRequestFilter {

    @EJB( name=AuthenticationService.LOOKUP_NAME)
    private AuthenticationService authService;

    @Override
    public void filter( ContainerRequestContext requestContext ) throws IOException {
        /**
         * Get headers parameters
         */
        String userIdStr = requestContext.getHeaderString( SecurityConsts.HEADER_ID_PARAMETER );
        int userId = 0;

        if( userIdStr != null && !userIdStr.isEmpty() ) {
            userId = Integer.parseInt( userIdStr );
        }

        String securityToken = requestContext.getHeaderString( SecurityConsts.HEADER_TOKEN );

        User user = null;

        /**
         * If a token is …
Run Code Online (Sandbox Code Playgroud)

dependency-injection ejb jersey

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

在ARM上使用Qt的简单程序中的Segfault

我试图在ARM系统上使用Qt 4.7.4,以便在触摸屏上显示图形应用程序.

我的ARM卡嵌入了Linux系统; 我们使用Linux framebuffer向屏幕发送信息,并使用tslib + usbtouchscreen驱动程序获取触摸信息.

我能够交叉编译Qt并将库放在我的系统上.但是当我启动我的测试程序时,我每次都会在同一时刻得到段错误(没有合理的理由).

首先,这是我的测试程序(你可以看到它是非常基本的,没有理由进行段错误):

#include <QMessageBox> 
#include <QApplication>

int main( int argc, char *argv[] )
{
    QApplication app( argc, argv );

    QMessageBox msgBox;
    msgBox.setText( "Hello world !" );
    msgBox.show();

    return app.exec();
}
Run Code Online (Sandbox Code Playgroud)

show()事实上,在调用期间追加了段错误(由于一些调试),我意识到它在加载字体缓存期间会附加.而且,printf()在调用之后添加一个刚才localData()会使segfault消失...片刻!但是,当我关闭应用程序时,无论如何我都会得到段错误.

Qt/gui/text/qfont.cpp线路2615,加入printf()theFontCache()->loadData()暂时解决此问题:

QFontCache *QFontCache::instance()
{
    QFontCache *&fontCache = theFontCache()->localData();

    if (!fontCache) {
        fontCache = new QFontCache;
    }

return fontCache;
} 
Run Code Online (Sandbox Code Playgroud)

这是我的./configure命令行:

./configure -release -shared -fast -no-largefile -exceptions -no-accessibility -no-stl -no-qt3support …

c++ qt arm segmentation-fault

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

用树枝显示Doctrine Collection?(Symfony2的)

我有一个代表新闻的非常简单的学说实体; 这个消息可以与很多图片联系起来,所以我决定使用一个Doctrine Collection.问题是,我想检索这些图片并在我的模板中显示它们......但它似乎没有用.你知道我怎么做吗?

这是我尝试过的:

{% for annonce in annonces %}
    <div class="annonce_item">
    {% for photo in annonce.photo  %}
        <img src="{{ photo.path }}" alt="" />
    {% endfor %}
</div>
<!-- End .annonce_item -->
{% endfor %}
Run Code Online (Sandbox Code Playgroud)

annonce是新闻类,照片是集合:

/**
 * @ORM\OneToMany(targetEntity="Photo", mappedBy="id",cascade={"persist"})
 */

private $photo;
Run Code Online (Sandbox Code Playgroud)

当我尝试在浏览器中显示此页面时,我得到以下异常:

在呈现模板期间抛出异常("通知:未定义的索引:> id>/Applications/MAMP/htdocs/ApacheImmobilier/vendor/doctrine/lib/Doctrine/ORM/Persisters/Basi> cEntityPersister.php line 1274 ")在第45行的"APPagesBundle:Index:index.html.twig"中.

谢谢!

doctrine symfony twig

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

Doctrine查询构建器:语义错误

我有一个名为"Annonce"的表,其中包含有关帖子的一些信息; 我想通过查询检索已经在数据库中注册的所有"type_bien"(它是一个字段).我的桌子有好的字段"type_bien",我的实体也是.

所以我尝试了:

$em = $this->get('doctrine')->getEntityManager();
$query = $em->createQuery( 'SELECT DISTINCT type_bien FROM APNegociationBundle:Annonce' );
Run Code Online (Sandbox Code Playgroud)

但我得到了一个语义错误:

[Semantical Error] line 0, col 16 near 'type_bien FROM': Error: 'type_bien' is not defined.
Run Code Online (Sandbox Code Playgroud)

我的查询有问题吗?

symfony doctrine-orm

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

与额外领域的多对多自我关系?

我正在尝试开发一个朋友系统,我需要在我的用户实体上建立多对多关系; 现在,这就是我所做的:

/**
 * @ORM\ManyToMany(targetEntity="User", mappedBy="friends")
 */
protected $friendsWith;

/**
 * @ORM\ManyToMany(targetEntity="User", inversedBy="friendsWith")
 * @JoinTable(name="friends",
 *            joinColumns={@JoinColumn(name="user_id", referencedColumnName="id")},
 *            inverseJoinColumns={@JoinColumn(name="friend_user_id", referencedColumnName="id")}
 *           )
 */
protected $friends;
Run Code Online (Sandbox Code Playgroud)

但我想为这些关系添加一些额外的字段,例如创建日期或状态(已接受,待定,......); 我创建了另一个实体"朋友",我希望这个实体可以用作朋友之间的链接.但我真的不知道如何管理这个......

你有什么想法吗?

谢谢 !

symfony doctrine-orm

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

从基类指针中删除对象

想象一下,我有两个A类和B类定义如下:

class A {
public:
    virtual void pureVirtual() = 0;
}

class B : public A {
public: 
    virtual void pureVirtual();
}
Run Code Online (Sandbox Code Playgroud)

我当然有其他方法,但这仅仅是为了这个例子.现在,在我的cpp代码中,我有这种var:

B *myB = new B;
A *myA = myB;
Run Code Online (Sandbox Code Playgroud)

是否可以通过调用myA上的 delete 来删除myB对象:?我是否必须做一些特别的事情才能做到这一点?OOP的想法和编程风格是否合适,还是一个非常糟糕的主意?delete myA;

谢谢!

c++

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

显示div over video(iframe或object)

我有一个页眉和页脚fixed就位的网站,而中间内容可以滚动.事实上,当我们滚动内容时应该在页眉或页脚下,因为网站占据了100%的高度,我选择了应用于overflow: auto;身体.中间内容不可能具有特定高度,因为页眉和页脚是固定大小.

我适用z-index于所有元素,它工作得很好,但我需要嵌入来自Youtube,Vimeo或其他的视频......通常,这些视频使用iframe或显示object; 我的客户端直接将嵌入代码放在后台.这是我的问题:当我scoll时,即使我设置了特定的视频,视频也会显示在页眉和页脚之上z-index; 中间内容中的其他元素隐藏得很好......

你有想法解决这个问题吗?

谢谢 !

html css iframe

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

FOSUserBundle:覆盖表单

我试图覆盖FOSUserBundle表单"编辑个人资料"; 我创建了类EditFormTypeAP/UserBundle/Form/Type为:

<?php
namespace FOS\UserBundle\Form\Type;

use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilder;
use FOS\UserBundle\Form\Type\ProfileFormType as BaseType;

class EditFormType extends BaseType
{


    public function buildForm(FormBuilder $builder, array $options)
    {
        $child = $builder->create('user', 'form', array('data_class' => $this->class));
        $this->buildUserForm($child, $options);

        $builder
            ->add($child)
            ->add('Mot de passe', 'password')
            ->add('Nom', 'nom')
            ->add('Prénom', 'prenom')
            ->add('Civilité', 'civilite')
            ->add('Newsletter', 'new_letter')
        ;
    }

    public function getDefaultOptions(array $options)
    {
        return array('data_class' => 'FOS\UserBundle\Form\Model\CheckPassword');
    }

    public function getName()
    {
        return 'ap_edit_profile';
    }
}
Run Code Online (Sandbox Code Playgroud)

然后,我创建了我的服务AP/UserBundle/Resources/config/services.yml:

services:
    ap_user.edit.form.type:
        class: AP\UserBundle\Form\Type\EditFormType
        arguments: …
Run Code Online (Sandbox Code Playgroud)

symfony

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