在会话中存储模态输入字段中的文本

时间:2016-05-13 07:51:28

标签: php session

我将来自mysql的数据存储在SESSION中并将其传递到另一个页面,在那里我使用所有数据进行压缩并下载。到目前为止,一切都很完美。

现在我尝试在用户点击下载按钮之前进行实际下载,在模态窗口中输入zip存档的名称,然后下载存档。到目前为止,我已经制作了模态,但现在我无法弄清楚如何将输入字段文本传递到会话中。所有其他数据都正确传递。这是迄今为止的来源

if(! isset($_POST['showcart'])) exit;
echo '<a class="btn btn-danger btn-lg pull-right" style="margin: 10px;" data-toggle="modal" data-target="#myModalNorm">Download All Files</a>
<table class="table table-striped table-bordered table-condensed responsive" id="sort">
                    <thead>
                <tr>
                    <th>ID</th>
                    <th>Title</th>                  
                    <th>Description</th>               
                    <th>Action</th>
                </tr>
                    </thead>';
foreach ($_SESSION['itemid'] as $i):

    $sql = "SELECT * FROM uploads WHERE upload_id = :id"; 
    $result = $pdo->prepare($sql);
    $result->bindParam(":id", $i);
    $result->execute();                 

    $resArray = $result->fetchAll();

     foreach ( $resArray as $row ):?>

        <div class="row">
            <div class="box-content">
                <tbody>
        <tr>    
            <td class="center"><?=$row["upload_id"]?></td>
            <td class="center"><?=$row["upload_title"]?></td>                    
            <td class="center"><?=$row["upload_description"]?></td>
        </tr>
                </tbody>
            </div>
        </div>
        <!-- Modal -->
        <div class="modal fade" id="myModalNorm" tabindex="-1" role="dialog" 
             aria-labelledby="myModalLabel" aria-hidden="true">
            <div class="modal-dialog">
                <div class="modal-content">
                    <!-- Modal Header -->
                    <div class="modal-header">
                        <button type="button" class="close" 
                           data-dismiss="modal">
                               <span aria-hidden="true">&times;</span>
                               <span class="sr-only">Close</span>
                        </button>
                        <h4 class="modal-title" id="myModalLabel">
                            Please enter the name for the archive
                        </h4>
                    </div>

                    <!-- Modal Body -->
                    <div class="modal-body">

                        <form role="form">
                          <div class="form-group">
                            <label for="exampleInputEmail1"></label>
                              <input type="text" class="form-control"
                              id="archiveName" placeholder="Please enter the name for the archive"/>
                          </div>

                        </form>


                    </div>

                    <!-- Modal Footer -->
                    <div class="modal-footer">
                        <button type="button" class="btn btn-default"
                                data-dismiss="modal">
                                    Close
                        </button>
                        <a href="create_zip.php" class="btn btn-primary">
                            Download
                        </a>
                    </div>
                </div>
            </div>
        </div>                                       


    <?php endforeach;?>

 <?php endforeach; ?>
 </table> </div>

create_zip.php我从$_SESSION['itemid']获取所有内容,但<input type="text" class="form-control" id="archiveName" placeholder="Please enter the name for the archive"/>

如何进行此输入?

1 个答案:

答案 0 :(得分:0)

实际上你可以很容易地实现这一点。首先将表格包裹在<form></form>左右 所以会发生这样的事情

if(! isset($_POST['showcart'])) exit;
echo '<form action="create_zip.php" method="post">
         <a class="btn btn-danger btn-lg pull-right" style="margin: 10px;" data-toggle="modal" data-target="#myModalNorm">Download All Files</a>
      <table class="table table-striped table-bordered table-condensed responsive" id="sort">
         <thead>
           ....
                    <!-- Modal Body -->
                    <div class="modal-body">

                          <div class="form-group">
                            <label for="archiveName"></label>
                              <input type="text" class="form-control"
                              id="archiveName" name="archiveName" placeholder="Please enter the name for the archive"/>
                          </div>

                    </div>
                    <!-- Modal Footer -->
                    <div class="modal-footer">
                        <button type="button" class="btn btn-default"
                                data-dismiss="modal">
                                    Close

                        <input type="submit" name="submit" value="Download" class="btn btn-primary">

                    </div>
                </div>
            </div>

        </div>                                       

    <?php endforeach;?>

 <?php endforeach; ?>
</table> </div></form>

然后在create_zip.php中检查isset是否提交按钮并指定变量。

if(isset($_POST['submit']))
{   
     //your code
     $archiveName = $_POST['archiveName'];

     // other source
} else { echo 'no archive'; }