小编sam*_*old的帖子

扩展Zend_form_element_select,错误消失

我有一个下拉菜单Element_Select,我正在变成一个自定义元素,Element_SelectCustom以便我可以直接用值填充它.这是自定义元素

<?php

require_once ('Zend/Form/Element/Select.php');

class Zend_Form_Element_SelectCustom extends Zend_Form_Element_Select
{
    public function init() {
        $this->addMultiOptions(array(
            'NULL' => 'Choose Value',
            '1' => 'First',
            '2' => 'Second',
            '3' => 'Third',
        ));
        return parent::init();
    }
Run Code Online (Sandbox Code Playgroud)

问题是,当我将新的自定义元素添加到表单并将其设置为required时,当我不选择值时,它不会触发错误.

$test = new Zend_Form_Element_SelectCustom('test');
$test->setRequired(true);
$this->addElement($test);
Run Code Online (Sandbox Code Playgroud)

我不知道它有什么问题.是否可能需要重新启动另一种方法?

php zend-framework zend-form zend-form-element

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

如果是OpenID,我还需要保存哪些用户数据

我想知道OpenID是否对我有好处.现在该网站有一个正常的注册过程,我问用户我需要的数据,如他的电子邮件,姓名,用户名,年龄等.然后我让他验证他的电子邮件.所有这些数据都存储在数据库中.

当我开始使用OpenID时,我理解这是我需要做的:

  1. 我不需要存储任何与密码相关的数据
  2. 我的数据库中仍然可以有一个电子邮件字段,我会通过直接询问OpenID提供商来收到电子邮件吗?对?
  3. 我是否仍然可以向用户询问我想要的任何其他详细信息,例如让他选择用户名等等?

你注意到的任何事情,你可以告诉我,所以我更了解这一点?

php openid authentication login web-applications

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

要像SO一样添加OpenID,我是否必须单独实现每个OpenID

我看到大多数允许您使用OpenID登录的网站都列出了几个OpenID提供商,如Yahoo,Google,myopenID等.

如果我想为我的网站用户提供相同的功能(允许他们使用他们的Yahoo或Gmail登录等),我是否必须单独添加每个OpenID提供商?我的意思是,我是否必须去研究如何添加Yahoo,然后去研究如何添加Gmail,然后去研究如何添加OpenID等?或者有一个更简单的方法来做到这一点?

我使用PHP,因此欢迎任何可以使这更容易的建议或库

php openid login web-applications

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

修改htmlpurifier允许此标记的标记

我的html净化器设置现在只允许这些标签

$configuration->set('HTML.Allowed', 'p,ul,ol,li');
Run Code Online (Sandbox Code Playgroud)

我想允许缩进列表,我的编辑器使用这个HTML

<ul style="margin-left: 40px;">
Run Code Online (Sandbox Code Playgroud)

我该如何更改HTMLPurifier Allowed标签?我想添加style,但我认为最好准确指定允许的样式,在这种情况下是哪种样式margin-left.更改HTML的正确方法是什么.适用于此案例?

php xss htmlpurifier

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

根据其他值设置CSS值

我有一个div,我想将其高度设置为另一个div的高度的1/2。有什么办法可以说height: 50% of height of divid1;

css

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

如何将数组展平为一串值?

我有一个看起来像这样的数组.

'keyvals' => 
    array
      'key1' => 'value1'
      'key2' => 'value2'
      'key3' => 'value3'
Run Code Online (Sandbox Code Playgroud)

有没有一种很酷的方法可以将它压平成一个像'value1 value2 value3'?如果有新的东西,我也可以访问PHP 5.3.

php arrays

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

在 PHP 中使用 C/C++ 代码而无需编写扩展

我读到可以通过编写扩展在 PHP 中使用 C/C++ 代码。有没有更简单的方法,比如包装魔法或类似的东西(我必须说,我听说过这个词,但不太了解包装是什么)。

php c c++ php-extension

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

如何继承祖父母CSS不是父代?

我觉得这是不可能的,但我还是想问一下。

<body>                  //body uses 'back' background
<div id="div1">         //div1 uses 'front' background
   <div id="child1">    //child1: no backgrounds, so shows 'front' background
   </div>
</div>
</body>
Run Code Online (Sandbox Code Playgroud)
  • 我的body元素使用背景图片。(我将其称为back背景图片)
  • div1使用其他背景图片(我将其称为front背景图片),因此front背景图片覆盖了主要背景图片。
  • div1包含一个子div child1,它不使用任何背景图像,因此它仅显示其父级的背景图像,即显示front背景。

我想child1使用body其父级的背景,而不是其父级的背景div1。由于back背景的性质(这是一幅图画,而不是重复的图案),我不能仅将back背景图像应用于child1。我实际上需要一种在div1的背景上打洞的方法,以便child1back背景图像作为背景,而不是其父级的背景。

所以我的问题是:div是否可以继承其祖父母的背景而不是其父母的背景?

如果CSS无法做到这一点,我欢迎使用javascript解决方案。

javascript css jquery background background-image

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

如果只有同一个用户才会看到XSS输入是威胁吗?

如果他输入的XSS输入只能由他查看,恶意用户究竟能获得什么?他能得到什么吗?

我理解当所有站点用户都会查看恶意用户输入时XSS是如何出现问题的.但如果每个用户只查看自己的输入,他的恶意输入将只能由他查看,所以我的问题是:

  • 这会以某种方式间接影响其他用户吗?
  • 他能从中获得什么?

php security xss user-input

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

必须C库具有.lib扩展名

我不知道C,但需要与项目中的某些C文件进行交互.我注意到,一些文件的.lib扩展名,而其他人(也应该是库)必须.c.h只能在一个大文件的文件夹.

  • 这些库之间有什么区别.
  • .c.h文件夹也是库.
  • .lib格式库和这些人谁做了正式的格式.c.h只是懒惰或不使用最好的做法?

c

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