我的 Yii 框架有问题,一切都在本地运行良好,但是当我尝试将我的应用程序移动到另一个系统时,一些视图显示诸如“未定义变量”之类的错误。任何人都知道这个问题。
我发现了一些与 yii 类似的问题,但没有一个为我提供了正确的答案。
编辑
实际上我有 2 个下拉框,第一个从模型中获取值,如果我们从第一个下拉列表中选择 1,它将过滤结果并显示在第二个下拉列表(ajax 调用)中,两个下拉框都使用不同的控制器操作
在 firezilla 中,我收到请求的 500 内部服务器错误,下图包含日志作为响应。
有关未定义变量的错误可能总是存在,但由于error_reporting和display_errors配置指令的值不太严格而未显示。
未定义的变量通常不会导致 500 内部服务器错误。有关这些错误的详细信息,请查阅 Web 服务器的日志文件。
如果您在本地开发机器上使用 PHP 5.2 而其他系统使用 5.3,则可能会发生这种情况。在 5.3 中,如果有一些未定义的变量(在您的情况下为 $result),PHP 会默认向您发出通知。
几年前,当我将 Yii 项目从 5.2 迁移到 5.3 时,我得到了很多这样的东西。
我有完全相同的问题。我的 ajax 网站在 localhost 中完美运行。但是当我将它上传到服务器时,我意识到无法返回 500 内部错误的 ajax 请求。当我单击 url 时,它会显示未定义的变量。解决方法:查看ajax请求的url:之前:
echo CHtml::textField('idsearch', '', array(
'onKeyUp' => CHtml::ajax(
array(
'type' => 'POST',
'dataType' => 'html',
'data' => array(
'id' => 'js:idsearch.value'),
'update' => '#dvfeeform',
'url' => CController::createUrl('student/searchajax'),
))
));
将网址编辑为:
'url' => Yii::app()->createUrl('student/searchajax'),
它工作得很好。希望有一天它可以帮助某人
我已经将一个空数组 $result 从控制器传递到视图,现在它工作正常。
但到现在为止,我无法弄清楚为什么它在我的本地主机上运行良好,而不是在其他系统中运行良好。