yii 通过html按钮传递变量值

iqxoj9l9  于 2022-11-09  发布在  其他
关注(0)|答案(1)|浏览(161)

我在PHP脚本中使用HTML。我已经将'client_id'设置为'1',但'client_id'本身是一个变量,它在控制器中用于检索客户端ID($client_id)。我不想传递默认值,而是传递变量,这样它就可以检索$client_id保存的值。如果我设置'client_id =〉'null'然后我得到一个错误消息,说找不到客户端(这是正确的,因为没有客户端被传递)。如果我设置'client_id' =〉'1',它就可以工作,但我不想传递一个静态值。
下面是该按钮的代码:

<?= Html::a('<span class="glyphicon glyphicon-export"></span> Download full questions template', ['export/export-template', 'client_id' => '1', 'type' => 'full'], ['class' => 'btn btn-primary pull-right']); ?>

下面是用于检索$client_id的代码:
第一个
因此我的问题是,如何在HTML按钮中传递'$client_id'?

i2loujxw

i2loujxw1#

你好,你还没有提到控制器代码,但你可以通过变量形式控制器,以查看这样假设这是控制器类代码

function actionExportTemplate( $client_id= null, $type = null){
  $clientId = getClient($client_id);
  return $this->render('demo', ['clientId' => $clientId]);
}

private function getClient($client_id)
{
    if (isset(Yii::$app->user->identity->client_id)) {
        $client_id = Yii::$app->user->identity->client_id;
    }

    $Client = Client::findOne($client_id);

    if (is_null($Client)) {
        throw new NotFoundHttpException('Client not found');
    }

    return $Client;
}

现在,假设这是您视图代码,我将其命名为demo.php

<?= Html::a('<span class="glyphicon glyphicon-export"></span> Download full questions template', ['export/export-template', 'client_id' => $clientId, 'type' => 'full'], ['class' => 'btn btn-primary pull-right']); ?>

相关问题