PHP通过提交按钮发送数据(表名)时始终显示最后创建的表

时间:2016-11-13 08:06:06

标签: php html mysql

所以,我有点新的PHP,我需要发送一个表名到另一个PHP文件这是我已经拥有的代码:

<form action="clases.php" method="GET">

        <?php
         $result= mysql_query('SHOW TABLES', $conn) or die ('cannot show tables');
    while($tablename = mysql_fetch_array($result)){
        $a=0;
        $table = $tablename[$a];




       echo '<table cellpadding="0" cellspacing="0" class="db-table">';
       echo '<tr>';


        echo '<td>',$table,'<input type="hidden" name="Class" value="' . $table . '" />';
        echo '</td>';
        echo "<td><input type='submit' name='Entrar' value='Enter'></td>";
        echo "<td><input type='submit' name='Eliminar' value='Delete'></td>";
        echo '</tr>';
        echo '</table><br />';
        ++$a;
      }
        ?>
</form>

现在我只需要Enter按钮工作,当我提交它时我应该发送到另一个php文件只有:

<?php $classname = $_GET['Class']; echo $classname; ?>

但是它总是给我我创建的最后一个表,所以如果有3个表创建

  • 表A
  • 表B
  • 表C

$ classname始终显示“Table C”。

抱歉英语,这不是我的第一个lenguaje。

1 个答案:

答案 0 :(得分:0)

这是因为代码是在循环中执行的。当您按Enter键时,循环完成,唯一可用的表是创建的最后一个表C.您可以使用表数组来存储创建的每个表字符串。检查它然后附加事件