Экспорт данных в виде xls [запись в нескольких формах]

#javascript #php #jquery #html #zend-framework

#javascript #php #jquery #HTML #zend-framework

Вопрос:

  <?php foreach($renewals as $row) { ?>
            <tr >
                <td style="width:50%;"><?php echo $row['renew_year']; ?></td>
                <td style="width:40%;"><?php echo $row['total']; ?></td>

                <td><a href="<?php $options['id'] = 18; echo $this->url("admin",$options); ?>?renew_year=<?php echo $row['renew_year']?>">View</a>

                </td>
                <td>
                    <input type="button" name="exportXLSRvt" id="exportXLSRvt" class="button exportIcon" title="Export XLS">
                <form id="frmExportRvt" name="frmExport" method="post"
                      action="<?php echo $this->url("admin", array("controller" => "members", "action" => "indexExport", "id" => 18)); ?>?renew_year=<?php echo $row['renew_year'] ?>"
                      style="display: none;">
                    <input type="hidden" name="hdn_export_type" id="hdn_export_type" value="xls"/>
                </form>
                </td>
            </tr>
            <?php } ?>
  

Приведенный выше код экспортирует данные в xls, я создал несколько форм ….. зависит от данных, но мы когда-либо нажимаем на изображение, в нем публикуются одни и те же данные
итак, если у какого-либо органа есть альтернативное решение, пожалуйста, помогите мне]

Ответ №1:

Если, на какие бы изображения вы ни нажимали, вы всегда получаете одни и те же данные, это просто означает, что у вас всегда одно и то же действие в каждой форме.

Итак, я сосредоточусь на этой строке

  action="<?php echo $this->url("admin", array("controller" => "members", 
 "action" => "indexExport", "id" => 18)); ?>
 ?renew_year=<?php echo $row['renew_year'] ?>"
  

Возможно, вам нужно переключиться на что-то вроде этого:

  action="<?php echo $this->url("admin", array("controller" => "members", 
 "action" => "indexExport", "id" => 18, "renew_year" => $row['renew_year'])); ?>"
  

Вы должны иметь возможность вызывать $ _GET[‘renew_year’] со своего контроллера и загружать нужные данные.

Комментарии:

1. renew_year я получаю что-то вроде этого 2006, 2007, …. поэтому, когда вы нажимаете на кнопку отправки …. только первое действие формы нами пройдено

2. Я заметил две вещи: во-первых, вам может понадобиться кнопка «отправить» внутри вашей формы. Во-вторых, если вы хотите получить $ row [‘renew_year’] через $_POST вместо $ _GET, просто добавьте скрытый ввод с $ row [‘renew_year’] в качестве значения