一页中的2个表单 - 第二个表单无需操作即可正常工作

时间:2014-09-19 07:54:04

标签: php html forms post action

我的问题接近于此: PHP: 2 forms different action pages, only 1 form action works

我正在创建一个php页面,它从form1获取学生姓名的搜索值 并列出匹配学生姓名,每个学生都有一个按钮删除学生(form2) 现在表单2 action = delete.php不起作用。

     <?php   $results = array();
        $results = mysql_fetch_array($raw_results);
        echo ''.$ln.' matches found as following:';

        for($i=0;$i<$ln;$i++){ ?> 

    <ul data-role="listview" data-divider-theme="d" data-inset="false">
     <li data-role="list-divider" role="heading">             
    <?php echo 'StudentName:'; echo (" $results[3] "); ?>
    </li>
     <li data-theme="c">

     <?php echo 'Email:'; echo (" $results[4] "); ?>

    </li></ul>

<?php    echo' <form name="form1" method="post" action="delete.php">  /*here is the problem*/

                            <input type="button" name="delete" class="button red" value="Delete member"> 
                            <input type="hidden" name="id"  value="'. $results[0].'"    > 

    </form> '; ?> 

你可能会问为什么我用echo打印表单?因为我也尝试了这个并且它不起作用:

  <form name="form1" method="post" action="delete.php"> 

                    <input type="button" name="delete" class="button red" value="Delete member"> 
                    <input type="hidden" name="id"  value="<?php  echo $results['0']; ?>" > 

                  </form>

这是deletestudent.php

<?php

include ('connect.php');

if (isset($_POST['delete'])) {
$mid=$_POST['id'];
             mysql_query(" DELETE FROM member WHERE (m_id='$mid') "); 
 }

  ?>

希望理由清楚,我准备在必要时写下更多细节

2 个答案:

答案 0 :(得分:2)

您没有提交表格。

<input type="button" name="delete" class="button red" value="Delete member">

应该是

<input type="submit" name="delete" class="button red" value="Delete member">

答案 1 :(得分:1)

只有在按下“提交”按钮时,才会自动执行表单的操作属性。

尝试更改您的代码:

<input type="submit" name="delete" class="button red" value="Delete member">

&#34;提交&#34;按钮类型将自动触发操作,并应按预期将表单输入作为后置参数传递。