Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/290.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在php中的特定行中选择特定按钮_Php_Html_Mysql_Row - Fatal编程技术网

在php中的特定行中选择特定按钮

在php中的特定行中选择特定按钮,php,html,mysql,row,Php,Html,Mysql,Row,我使用php打印数据库中的一些信息。我使用html以表格格式显示。每行有3个按钮,用户可以在其中更改特定行中的课程。问题是我无法定义该表中的所有按钮。如果是单个提交按钮,我会给它一个名称,然后通过$\u POST获取数据['name']但是对于多行,我感到困惑。 这是我的密码: for($i=0;$i<$myarray_lenght;$i++) { $row_id=$i; echo "<tr>"; echo "<td><form ac

我使用php打印数据库中的一些信息。我使用html以表格格式显示。每行有3个按钮,用户可以在其中更改特定行中的课程。问题是我无法定义该表中的所有按钮。如果是单个提交按钮,我会给它一个名称,然后通过$\u POST获取数据['name']但是对于多行,我感到困惑。 这是我的密码:

for($i=0;$i<$myarray_lenght;$i++) 
{
    $row_id=$i;
    echo "<tr>";
    echo "<td><form action='private_page.php' method='POST'> <input type='radio' name=$row_id value='edit'>  </form> </input></td>";
    echo "<td>". $myarr[$i]['thesis_name'].  "</td>".
                "<td>" .$myarr[$i]['student_id']."</td>"
    echo "<td><form action='private_page.php' method='POST'> <input type='submit' name='more_info' value='Get more info of the Student !'>  </form></input></td>";
    echo "<td><form action='private_page.php' method='POST'> <input type='submit' name='remove' value='Remove the Student !'>  </form></input></td>";                                   
   echo "</tr>";                
}

对于($i=0;$i)对于每个表单,添加一个隐藏输入,其值设置为当前id-

echo "<td><form action='private_page.php' method='POST'>";
echo "<input type='submit' name='more_info' value='Get more info of the Student !'>";
echo "<input type='hidden' name='thisID' value='". $myarr[$i]['student_id'] ."'/>";
echo "</form></input></td>";
您的另一个选择是使用Javascript以适当的id和操作构建post请求。

首先,
不允许是
的子元素。您可以在
中包含整个
。您可以在
中包含
一个
单元格
。在
中不能有
的一部分。请检查

因此,我不建议您在
中使用

备选方案/建议

1)第一种解决方案


private_page.php

<?php

$studentID = $_GET['id'];
$action = $_GET['action'];

if($action == "Remove") {
    // Do The Needfull action
}

if($action == "more_info") {
    // Do The Needfull action
}
?>
<?php

$studentID = $_POST['student'];
$action = $_POST['submit'];

if($action == "Remove") {
    // Do The Needfull action
}

if($action == "more_info") {
    // Do The Needfull action
}
?>

2)第二种解决方案


private_page.php

<?php

$studentID = $_GET['id'];
$action = $_GET['action'];

if($action == "Remove") {
    // Do The Needfull action
}

if($action == "more_info") {
    // Do The Needfull action
}
?>
<?php

$studentID = $_POST['student'];
$action = $_POST['submit'];

if($action == "Remove") {
    // Do The Needfull action
}

if($action == "more_info") {
    // Do The Needfull action
}
?>


由于您是动态构建表的,您可以在每个
中添加一个隐藏字段,并将该字段的值设置为当前记录的id。然后该值将传递给您的私有页面。php同样,您应该去掉那些
标记。在
私有页面.php
中,您需要处理多个一次选择记录,还是只选择一个记录?我需要处理一个记录。例如,教师登录,查看他的课程以及与之相关的学生。每行都有一个按钮用于删除该学生或该课程。因此,为了对教师进行编辑,他必须首先选择该行,然后点击该行中相应的按钮。谢谢,永远这似乎很好,但我得到了一个“未定义索引:passStudentId”错误。我创建了变量$passStudentId=$myarr[$I]['student\u id'];在for循环中,因为它没有被声明,但仍然是相同的错误。在哪个页面错误出现?意味着在private_page.php中?@CemAytekinYes事实上它们都在private_page.php中可能会造成混淆?不。不。@CemAytekin。其他一些问题。一个问题是:
$passStudentId=$myarr[$i]['student\u id'];
第一页的值正确。是的,问题解决了!非常感谢您的关注。
<form method='POST' action='private_page.php'>
    <table>
        <?php
        for($i=0;$i<$myarray_lenght;$i++) 
        {
            $row_id=$i;
            echo "<tr>";
                echo "<td><input type='radio' name='student' value='."$studentID".'></td>";
                echo "<td>". $myarr[$i]['thesis_name'].  "</td>"."<td>" .$myarr[$i]['student_id']."</td>"                                   
            echo "</tr>";                
        }
        ?>
    </table>
    <input type='submit' name='submit' value='more_info'></input>
    <input type='submit' name='submit' value='Remove'></input>
</form>
<?php

$studentID = $_POST['student'];
$action = $_POST['submit'];

if($action == "Remove") {
    // Do The Needfull action
}

if($action == "more_info") {
    // Do The Needfull action
}
?>