通过 html 按钮传递变量值
Passing a variable value through a html button
我在 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 的代码:
```public function actionExportTemplate( $client_id= null, $type = null)
{
// Get client
$Client = self::getClient($client_id);```
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;
}
所以我的问题是,如何通过 HTML 按钮中的“$client_id”?
你好,你没有提到控制器代码,但是你可以传递变量形式的控制器来查看
假设这是控制器 class 代码
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']); ?>
我在 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 的代码:
```public function actionExportTemplate( $client_id= null, $type = null)
{
// Get client
$Client = self::getClient($client_id);```
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;
}
所以我的问题是,如何通过 HTML 按钮中的“$client_id”?
你好,你没有提到控制器代码,但是你可以传递变量形式的控制器来查看 假设这是控制器 class 代码
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']); ?>