Yii2:从控制器中的html获取图像ID

时间:2016-01-08 05:18:10

标签: php yii2

我使用 Yii2 - 高级模板。我想采取' img_id'来自我的' index.php '在 siteController 的功能中。

我的代码在' index.php'如下:

<?php
  $m = $dataProvider->getModels();
  foreach ($m as $dp) {
      echo '<a id ="img_id" class="" href="http://localhost/efa-webv1/frontend/web/index.php?r=site/subcat&id='.$dp['bmc_id'].'" method="post">';
      echo "<img src = '"."http://localhost/efa-webv1/backend/web/".$dp['bmc_image']."' />";
      echo '<center><font color = "white">'.$dp['bmc_name'].'<font/></center>';
      echo '</a>';
   } 
?>

我试图在我的siteController中将其作为:

public function actionSubcat() {

    $searchModel = new BusinessMainCategoriesSearch();
    $dataProvider = $searchModel->search(Yii::$app->request->queryParams);
    $dataProvider->pagination->pageSize = $dataProvider->getTotalCount();
    $query = new \yii\db\Query;
    $query->select('*')->from('business_sub_categories')->where(['bmc_id' => $_POST["img_id"]]);    //trying to get img_id using this
    $query->createCommand();

    $dataProvider2 = new ActiveDataProvider([
        'query' => $query,
        'pagination' => false,
     ]);
     return $this->render('subcat', [
         'dataProvider' => $dataProvider, 'dataProvider2' => $dataProvider2]);
    }

但如果我使用&#39; $ _ POST [&#34; img_id&#34;]&#39;,则会显示未定义的索引&#34; img_id&#34;。

所以,请帮助我让我理解。

If I used Yii2 ancher tag, I get unexpected result as -

1 个答案:

答案 0 :(得分:0)

现在,我修改的index.php是:

<?php
                    $m = $dataProvider->getModels();
                    foreach ($m as $dp) {
                        echo '<a id ="img_id" class="" href="http://localhost/efa-webv1/frontend/web/index.php?r=site/subcat&img_id='.$dp['bmc_id'].'" method="get">';
                        echo "<img src = '"."http://localhost/efa-webv1/backend/web/".$dp['bmc_image']."' />";
                        echo '<center><font color = "white">'.$dp['bmc_name'].'<font/></center>';
                        echo '</a>';
                    } ?>

我正在控制器中提到&amp; id而不是&amp; img_id(在url中),这是错误的。现在我的控制器代码是这样的 -

$query->select('*')->from('business_sub_categories')->where(['bmc_id' => $_GET['img_id']]);

请注意,当我使用POST方法从url传递值时,它无效。所以,我使用了GET方法&amp;做完了。

无论如何,多亏了所有人!