Php 从属下拉列表内部服务器错误(500)
我在StackOverFlow中发现了类似的问题,但我得到了不同的错误。 我正在尝试在yii中实现依赖下拉列表。从数据库到第一个下拉列表获取值。但我无法在第二个下拉列表中获得结果输出 控制器:Php 从属下拉列表内部服务器错误(500),php,yii,Php,Yii,我在StackOverFlow中发现了类似的问题,但我得到了不同的错误。 我正在尝试在yii中实现依赖下拉列表。从数据库到第一个下拉列表获取值。但我无法在第二个下拉列表中获得结果输出 控制器: public function actionDynamic(){ $data=Stu::model()->findAll('sna=:parent_id', array(':parent_id'=>$_POST['sna']));
public function actionDynamic(){
$data=Stu::model()->findAll('sna=:parent_id',
array(':parent_id'=>$_POST['sna']));
// var_dump($data);
// exit();
$data=CHtml::listData($data,'branch','branch');
// var_dump($data);
// exit();
foreach($data as $value=>$name){
echo CHtml::tag('option',
array('value'=>$value),CHtml::encode($name),true);
}
}
视图:
我按照这个链接来实现依赖下拉列表
它没有显示任何错误。但在网络选项卡(f12键)中,首先更改下拉列表,显示“500”(内部服务器错误)
请先帮我谢谢
500(内部服务器错误)
出现此错误的原因可能很多,但由于您的应用程序正在运行,我想您的代码可能有问题。您的代码看起来不错,但我想这两点可能是个问题:
echo$form->DropDownList
更改为echo$form->DropDownList
'update'=>'#branch'
更改为正确的id
,确保branch
是第二个下拉列表的id
,通常是它的ModelName\u name
,因此它应该类似于'update'=>'#ModelName\u branch
。检查浏览器中的第二个下拉列表,以确保id
是什么$\u POST['sna']
更改为$\u POST['ModelName']['sna']
500(内部服务器错误)
出现此错误的原因可能很多,但由于您的应用程序正在运行,我想您的代码可能有问题。您的代码看起来不错,但我想这两点可能是个问题:
echo$form->DropDownList
更改为echo$form->DropDownList
'update'=>'#branch'
更改为正确的id
,确保branch
是第二个下拉列表的id
,通常是它的ModelName\u name
,因此它应该类似于'update'=>'#ModelName\u branch
。检查浏览器中的第二个下拉列表,以确保id
是什么$\u POST['sna']
更改为$\u POST['ModelName']['sna']
问题就在这里
$\u邮政['sna']
在ajax调用中,数据将以YourModel[property]
EX:
Stu['sna']
Stu['some_other']
因此,在您的操作中,dynamic$\u POST['sna']
无法选择发布的值
更改:
$data=Stu::model()->findAll('sna=:parent_id', array(':parent_id'=>$_POST['sna']));
到
或
public function actionDynamic()
{
$postValues=$_POST['Stu'];
$data = Stu::model()->findAll('sna=:parent_id', array(':parent_id' =>$postValues['sna'] ));
$data = CHtml::listData($data, 'sna', 'sna');
foreach ($data as $value => $name)
{
echo CHtml::tag('option', array('value' => $value), CHtml::encode($name), true);
}
}
问题就在这里
$\u邮政['sna']
在ajax调用中,数据将以YourModel[property]
EX:
Stu['sna']
Stu['some_other']
因此,在您的操作中,dynamic$\u POST['sna']
无法选择发布的值
更改:
$data=Stu::model()->findAll('sna=:parent_id', array(':parent_id'=>$_POST['sna']));
到
或
public function actionDynamic()
{
$postValues=$_POST['Stu'];
$data = Stu::model()->findAll('sna=:parent_id', array(':parent_id' =>$postValues['sna'] ));
$data = CHtml::listData($data, 'sna', 'sna');
foreach ($data as $value => $name)
{
echo CHtml::tag('option', array('value' => $value), CHtml::encode($name), true);
}
}
服务器错误日志显示了什么?他们将有一个500错误的原因。日志位置特定于您的服务器包。在LAMP stack上,尝试/var/log/httpd/*errror_log或Google以获取您的操作系统和web服务器包。服务器错误日志会显示什么?他们将有一个500错误的原因。日志位置特定于您的服务器包。在LAMP stack上,为您的操作系统和web服务器包尝试/var/log/httpd/*error_log或Google。