Php 如何显示下拉列表以按选定值显示记录?
我有两种类型的用户,一种是Php 如何显示下拉列表以按选定值显示记录?,php,yii,Php,Yii,我有两种类型的用户,一种是ADMIN,另一种是School\u ADMIN。我的申请表中增加了许多学校。每个学校都有自己的学校管理员,学校管理员可以查看所有内容,如付款记录、账单等。我创建了一个名为付款的页面,其中我向学校管理员显示了所有付款。这是我的密码。我正在使用YII-PHP框架 public function actionPayments(){ $model = School::model()->with(array('payments'))->findByP
ADMIN
,另一种是School\u ADMIN
。我的申请表中增加了许多学校。每个学校都有自己的学校管理员,学校管理员可以查看所有内容,如付款记录、账单等。我创建了一个名为付款
的页面,其中我向学校管理员显示了所有付款。这是我的密码。我正在使用YII-PHP框架
public function actionPayments(){
$model = School::model()->with(array('payments'))->findByPk(Yii::app()->user->getState('school_id'));
$this->render('//display/school_payment',array('model'=>$model));
}
因此,在视图中,每个学校管理人员都可以进入他们的付款页面,查看他们的付款详情。它使用foreach循环显示该学校的所有付款
但我现在想要的是向管理员显示每家公司的付款详细信息。
基本上,我想显示一个下拉列表,其中将包含所有学校的列表,所以每当管理员选择任何学校,它应该显示该所选学校的付款详细信息。如果管理员选择学校1,它将显示学校1的所有付款,如果它选择学校2,则显示学校2的付款
我怎样才能做到这一点?这就是我到目前为止所尝试的
更新:
public function actionAdminPayments(){
$this->pageTitle = 'Payments Report';
$model = School::model()->findAll();
$this->render('//reports/company_admin_payment',array('model'=>$model));
}
这是我的视图,它显示了一个下拉列表,选择了所有学校的名称
<form class="form-horizontal" role="form">
<div class="form-group">
<div class="col-sm-2">
<select name=id class="form-control" id="gender1">
<?php
foreach($model as $mod){ ?>
<option><?php echo $mod->name ?></option>
<?php } ?>
</select>
</div>
</div>
</form>
我根据您的概念编写了一个代码。把它换成你的
<select name=id class="form-control" id="gender1" onChange="getPaySchool(this.value);">
<?php
foreach($model as $mod){ ?>
<option><?php echo $mod->name ?></option>
<?php } ?>
</select>
<span id="payment-list"></span>
我已经根据你的概念做了一个代码。把它换成你的
<select name=id class="form-control" id="gender1" onChange="getPaySchool(this.value);">
<?php
foreach($model as $mod){ ?>
<option><?php echo $mod->name ?></option>
<?php } ?>
</select>
<span id="payment-list"></span>
我认为您已经习惯了角色(即,是否是管理员/用户)。因此,如果是admin,则获取所选学校的所有付款详细信息,并使用Javascript AjaxYes显示。如果用户是管理员,那么它应该显示每个学校的所有付款。但我该怎么办?有代码帮助吗?我很困惑。好吧,你能区分管理员和用户登录吗?是的,我能。。我用迄今为止我所做的代码更新了我的问题。请检查我认为您已使用该角色(即,是否为管理员/用户)。因此,如果是admin,则获取所选学校的所有付款详细信息,并使用Javascript AjaxYes显示。如果用户是管理员,那么它应该显示每个学校的所有付款。但我该怎么办?有代码帮助吗?我很困惑。好吧,你能区分管理员和用户登录吗?是的,我能。。我用迄今为止我所做的代码更新了我的问题。请查收
public function aa(){ // here i have wite smaple code, so you change according to your needs
$users = DB::select('select * from userschool where active = ?', [1]);
$msg="";
foreach ($users as $user) {
$msg .= $user->schoolname;
}
echo $msg;
}