试图从显示的表中回显每个列的列

问题描述 投票:2回答:4

我正在使用此表,并尝试在警报中回显“ branchid”1

有两个表:

orders_address.php

<?php
  session_start();
  require_once('orders_address.vc.php');
?>

这里是我的每张表的摘录,“分支”和“分配”按钮仅是这里的关注点”

                    <td>
                      <a href="order_address.vc.php<?php echo '?branchid='.$rowAddress['branchid']; ?>">
                        <input type="submit" class="btn button-color-blue font-color-white full_width" name="assign" value="ASSIGN">
                      </a>
                    </td>

                    <td class="table-text-center">
                      <?php
                          echo($rowAddress['branchid']);
                      ?>
                    </td>

orders_address.vc.php

下面是单击按钮时的代码

  if (isset($_POST['assign']) && $_POST['assign'] == 'ASSIGN')
  {
    $branchid = $_GET ['branchid'];
    echo "<script type='text/javascript'>alert('$branchid');</script>";
    }

当前,我得到一个未定义的索引,并且警报框为空。 $ _GET ['branchid']似乎未检索到我想要的列。

谢谢您的帮助。

javascript php
4个回答
1
投票
<td>
    <?php 
        $branchid = isset($rowAddress['branchid']) ? $rowAddress['branchid'] : 0; 
    ?>
    <form method="POST" action="order_address.vc.php">
        <input type="hidden" name="branchid" value="<?php echo $branchid ?>" />
        <input type="hidden" name="assign" value="ASSIGN" />
        <input type="submit" value="ASSIGN" class="btn button-color-blue font-color-white full_width" />
    </form>
</td>
<td class="table-text-center">
  <?php echo $branchid; ?>
</td>


orders_address.vc.php:

if(isset($_POST['assign']) && $_POST['assign'] === 'ASSIGN') {     
    echo '<script type="text/javascript">';
    echo 'alert('.$_POST['branchid'].')';
    echo '</script>';
}

1
投票

我不确定为什么您有一个围绕着锚标记的表单提交按钮。老实说,当单击提交标签时,我不知道锚标签或表单提交是哪个优先。

假设您将表包装成HTML格式,并发出POST请求。我建议将branchid添加为提交按钮的值。例如:

 <input type="submit" class="..." name="assign" value="<?=$rowAddress['branchid']?>">

在接收端,您可以从branchid中获取$_POST['assign']

if (! empty($_POST['assign']))
{
    $branchid = $_POST['assign'];
    echo "<script type='text/javascript'>alert('$branchid');</script>";
}

0
投票

这是因为$_GET['branchid']句柄中有POST

if (isset($_POST['assign']) && $_POST['assign'] == 'ASSIGN') ...

但是您像往常一样将其发送给href链接GET,因此POST的条件永远不会为真。


0
投票
if (isset($_POST['assign']) && $_POST['assign'] == 'ASSIGN'){
$branchid = $_GET ['branchid'];
echo "<script type='text/javascript'>alert('$branchid');</script>";
}

HTML应该如下:

<form action="order_address.vc.php" method="POST">
        <input type="hidden" name="branchid" value="<?php echo $branchid ?>" />
        <input type="submit" name="assign" value="ASSIGN" />
</form>
© www.soinside.com 2019 - 2024. All rights reserved.