表单提交适用于windows dev机器,但不适用于linux生产服务器

时间:2013-01-09 10:31:17

标签: forms atk4

所以我有一个复杂的生成表单发生在我的Windows xampp服务器上工作正常但是在我的linux生产服务器上提交后没有检索下拉字段值 - 任何想法为什么??

    $f=$block->add('Form');

    if($dropdown) {
        $f->addField('Dropdown',$dropdown['value'],$dropdown['label'])
            ->setModel($dropdown['model']);

    }

    // Button
    $b=$f->add('Button')->setLabel($label);

    if($dropdown) {
        $b->js('click', $f->js()->atk4_form('submitForm'));
    }
    else {
        $b->js('click')->univ()
            ->newWindow($this->api->getDestinationURL(
                                './details',
                                array('model'=>$model,'type'=>$type)
                                )
                        )
                        ->execute();    
    }

    $block->add('HR');


if($f->isSubmitted()){
    $f->js()->univ()
            ->newWindow($this->api->getDestinationURL(
                                './details',
                                array(
                                        'model'=>$model,
                                        'type'=>$type,
                                        'field'=>'home_'.$dayShort,
                                        'value'=>$f->get($dropdown['value'])
                                        )
                                )
                        )
                        ->execute();    

    }

}

在Windows中工作但不在linux下工作的部分是'value'=>$f->get($dropdown['value'])靠近结尾

任何帮助将不胜感激!

感谢 格雷格

1 个答案:

答案 0 :(得分:1)

当在Windows中无法正常工作且在Linux中无法工作时,首先要检查的是类名和文件名中的大写/小写字母。

在这个特殊情况下,我猜你的错误是因为你有addField('Dropdown'),但是应该有addField('Drop D 拥有'),大写字母D在“down”中。