伙计们,我在网页上制作表单渲染/显示时遇到了一些问题。好吧,它在我的本地服务器上工作正常,但是一旦我在远程服务器中使用相同的代码,网页显示正常,但表单缺失。
本地主机:
操作系统:赢7
PHP:5.3.8
Apache:2.2.21
Zend:1.11.3
远程服务器:
OS:Linux CentOS 5.5版
PHP:5.3.8
Apache:2.2.3
Zend:1.11.3
FeedbackForm.php
class forms_FeedbackForm扩展了Zend_Form {
public function init(){
$这 - > setAction命令( '') - >使用setMethod( '后') - >的setName( 'feedbackForm');
$ feedback = new Zend_Form_Element_Textarea('feedback');
$ submit = new Zend_Form_Element_Button('submitButton');
$这 - >的addElement($反馈) - >的addElement($提交);
} }
IndexController.php
类IndexController扩展了Zend_Controller_Action {
public function indexAction(){
$ form = new forms_FeedbackForm();
$this->view->form = $form;
}}
index.phtml
echo $ this-> form;
但是,如果我用print_r($ this-> form)替换echo语句,我会看到两个服务器的对象详细信息。
答案 0 :(得分:1)
为您的班级使用资金:Forms_FeedbackForm而不是forms_FeedbackForm。自动加载器在Linux上找不到它。
通常,当Linux和Windows服务器之间出现类似问题时,这是一个资金问题。 Linux区分大小写,Windows不是。
答案 1 :(得分:0)
您的代码看起来很好。 我建议你在application.ini中设置显示例外:
resources.frontController.params.displayExceptions = 1 并确保您的错误视图显示异常。
答案 2 :(得分:0)
确保您的视图看起来像<?php echo $this->form; ?>
,否则PHP将无法实际执行。