选中“数据”复选框,单击“下一步”,然后取消选择所选行

时间:2015-05-15 13:12:58

标签: php mysql

我想为我的大学项目创建一个crf表单。 我创建了课程表我从课程中选择了一些数据,但是学生点击完成的课程然后点击。然后下一页显示相同的数据库表但不是那些课程,学生已经选择了。 然后学生可以为应用课程分组。 但是当我选择一些课程并单击下一步时,它会显示课程表中的上一行。但我希望当我点击时选择的课程行不选择。因为完成课程不想选择申请课程。

  1. 我想从数据库中选择一些行,当它显示除了所选行之外的所有行的相同数据库
  2. 我在问题行中添加了相同的行..

     <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
     <html>
      <head>
            <title>
             CRF Form
             </title>
        <link rel="stylesheet" href="CSS/admin_style.css" >
       </head>  
    <body>
        <div id="header">
        <a href="index.php">
            <h1>
                Welcome to the CRF Form
            </h1>
        </a>
        </div>
        <form action="selection.php" method="POST" enctype="multipart/form-data" >
        <div id="">
            <table width="1000" border="5" align="center">
            <tr>
                <td colspan="8" align="center" bgcolor="yellow">
                <h1>
                Slect your completed course
                </h1>
                </td>
            </tr>
            <tr bgcolor="orange">
                <th>
                    selection:
                </th>
                <th>
                    Course id:
                </th>
                <th>
                    Course title:
                </th>
                <th>
                    Course credits:
                </th>
                <th>
                    Course statust:
                </th>
                <th>
                    Delete Post:
                </th>
                <th>
                    Edit Post:
                </th>
    
            </tr>
    
        <?php 
        include("includes/connect.php");
    
        $query="select * from course";
    
        $run=mysql_query($query);
    
        while($row=mysql_fetch_array($run)){
        $id=$row['id'];
        $course_id=$row['course_id'];
        $course_title=$row['course_title'];
        $course_credits=$row['course_credits'];
        $course_status=$row['course_status'];
    
        ?>
    
    
            <tr align="center" bgcolor="pink">
                <td>
                <input type="checkbox" name="complete[]" value="<?php echo $id; ?>" />
    
                </td>
                <td>
                <?php echo $course_id; ?>
                </td>
                <td>
                <?php echo $course_title; ?>
                </td>
                <td>
                <?php echo $course_credits; ?>
                </td>
                <td>
                <?php echo $course_status; ?>
                </td>
                <td>
                <a href="delete.php?del=<?php echo $post_id ?>">
                Delete
                </a>
                </td>
                <td>
                <a href="Edit.php?edit=<?php echo $post_id ?>">
                Edit
                </a>
                </td>
            </tr>
    
    
            <?php } ?>
    
    
            <tr>
            <td align="center" colspan="7">
            <input type="submit" name="sub" value="NEXT">
            </td>
            </tr>
    
            </table>
    
            </form>
        </div>
    </body>
    </html>
    

    这是selec.php

    <html>
    <head>
        <title>
        CRF Form
        </title>
        <link rel="stylesheet" href="CSS/admin_style.css" >
    </head> 
    <body>
        <div id="header">
        <a href="index.php">
            <h1>
                Welcome to the CRF Form
            </h1>
        </a>
        </div>
    
        <div id="">
            <table width="1000" border="5" align="center">
            <tr>
                <td colspan="8" align="center" bgcolor="yellow">
                <h1>
                Slect your completed course
                </h1>
                </td>
            </tr>
            <tr bgcolor="orange">
                <th>selection:</th>
                <th>Course id:</th>
                <th>Course title:</th>
                <th>Course credits:</th>
                <th>Course statust:</th>
                <th>Delete Post:</th>
                <th>Edit Post:</th>
    
            </tr>
    
        <?php 
        include("includes/connect.php");
    
        $check=$_POST['complete'];
        foreach($check as $ch){
        $select= " id!='".$ch."' and ";//here is the problem
        }
    
    
        $query="select * from course
        where $select id!='0'";
    
        $run=mysql_query($query);
    
        while($row=mysql_fetch_array($run)){
        $id=$row['id'];
        $course_id=$row['course_id'];
        $course_title=$row['course_title'];
        $course_credits=$row['course_credits'];
        $course_status=$row['course_status'];
    
        ?>
    
    
            <tr align="center" bgcolor="pink">
                <td>
                <input type="checkbox" name="completed" /></input>
    
                </td>
                <td><?php echo $course_id; ?></td>
                <td><?php echo $course_title; ?></td>
                <td><?php echo $course_credits; ?></td>
                <td><?php echo $course_status; ?></td>
                <td><a href="delete.php?del=<?php echo $post_id ?>">Delete</a></td>
                <td><a href="Edit.php?edit=<?php echo $post_id ?>">Edit</a></td>
            </tr>
    
            <?php  } ?>
    
    
    
            </table>
        </div>
    </body>
    </html>
    

1 个答案:

答案 0 :(得分:2)

我认为您说过,一旦选择了该课程,它就不应该显示在下一页,学生可以查看其他课程吗?

如果是这样,那么您可以在下一页上使用以下sql查询,在那里您不想显示学生已完成的课程。

Application

如果我错了,请告诉我。我没有评论,因为我的声誉很低,而且stackoverflow也不允许我这样做。

<强> [EDITED]

这是您的完整代码。

  

您选择的php文件:

SELECT * FROM course WHERE id != $course_id
  

现在在你的下一个php文件中:

//assuming that you are logging in the students with their username or email id, if so then store their username in a session where logging in.
<?php 
    $user = $_SESSION['username'];
    include("includes/connect.php");

    if (isset($_POST['submit'])){

    $course_id= $_POST['course_id'];
    $course_title= $_POST['course_title'];
    $course_credits= $_POST['course_credits'];
    $course_status= $_POST['course_status'];

    $query="SELECT course.id,course.title,course.credits,course.status FROM course WHERE course.username = $user";

    $run=mysqli_query($conn,$query);

    while($row=mysqli_fetch_array($run)){
    $course_id= $_SESSION['course_id'] = $row['course_id'];
    $course_title=$row['course_title'];
    $course_credits=$row['course_credits'];
    $course_status=$row['course_status'];
}
    ?>

就是这样。注意:此解决方案可能包含括号等错误,但逻辑清晰。

为了更好的了解,请查看我的MySQL Complete Video Series