处理表格数据

接受用户输入的学生学号、姓名、成绩等信息,将接收到的信息存入数组并按照成绩升序排序,之后再以表格的形式输出。

目录

运行代码:

运行结果:


运行代码:

<style type="text/css">
table,div,td{
    text-align:center;
}
table{
    margin:0 auto;
}
p{
    font-size:18px;
    color:#FF0000;
}
</style>
<form name=fr1 method=post>
    <table border=1>
    <tr>
        <td><div>学号</div></td>
        <td><div>姓名</div></td>
        <td><div>成绩</div></td>
    </tr>
<?php
    for($i=0;$i<5;$i++)  //循环生成表格的文本框
    {
?>
    <tr>
        <td><input type=text name="XH[]"></td>
        <td><input type=text name="XM[]"></td>
        <td><input type=text name="CJ[]"></td>
    </tr>
<?php }?>
        <tr>
            <td colspan="3">
                <input type="submit" name="bt_stu" value="提交">
            </td>
        </tr>
    </table>
</form>
<p align=center>注意:学号值不能重复</p><br/>
<!--- 以上是输出表单 -->
<?php
    if(isset($_POST['bt_stu']))  //判断按钮是否被按下
    {
        $XH=$_POST['XH'];  //接收所有学号的值存入数组$XH
        $XM=$_POST['XM'];  //接收所有姓名的值存入数组$XM
        $CJ=$_POST['CJ'];  //接收所有成绩的值存入数组$CJ
        array_multisort($CJ,$XH,$XM);  //对以上三个数组排序,$CJ为首要数组
        for($i=0;$i<count($XH);$i++)
            $sum[$i]=array($XH[$i],$XM[$i],$CJ[$i]);  //将三个数组的值组成一个二维数组$sum
		echo "<div>排序后成绩表如下:</div>";
		//表格的首部
        echo "<table border=2><tr><td>学号</td><td>姓名</td><td>成绩</td></tr>";
        foreach($sum as $value)  //使用foreach循环遍历数组$sum
        {
            list($stu_number,$stu_name,$stu_score)=$value;//使用list()函数将数组中的值赋给变量
			//输出表格内容
            echo "<tr><td>$stu_number</td><td>$stu_name</td><td>$stu_score</td></tr>";
        }
        echo "<table><br/>";  //表格尾部
        reset($sum);  //重置$sum数组的指针
        while(list($key,$value)=each($sum))  //使用while循环遍历数组
        {
            list($stu_number,$stu_name,$stu_score)=$value;
            if($stu_number==181101)  //查询是否有学号为181101的值
            {
                echo "<p align=center>";
                echo $stu_number."的姓名为: ".$stu_name.",";
                echo "成绩为:".$stu_score;
                break;  //找到则循环结束
            }
        }
    }
?>

运行结果:

 

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值