【问题标题】:PHP View data from a single record by clicking on the view buttonPHP 通过单击查看按钮从单个记录中查看数据
【发布时间】:2019-05-23 23:09:42
【问题描述】:

我有两个页面students_list.php 和students_profile.php

在students_list.php 上,我有一个表格,显示所有学生的所有记录和VIEW 按钮,点击它应该打开students_profile.php 页面并从基于std_id 选择的单个记录中获取所有数据

更新:所以现在当我点击 VIEW 按钮时,我得到了 ID http://localhost/sms/student_profiles.php?std_id=3,但我仍然没有从选中的这条记录中检索数据

这是students_list.php的代码

<?php
require_once 'include/database/connect.php';

try {
    $pdo = new PDO("mysql:host=$host_db;dbname=$name_db", $user_db, $pass_db);                                 
    $sql = 'SELECT * FROM students';
    $q = $pdo->query($sql);
    $q->setFetchMode(PDO::FETCH_ASSOC);
    } catch (PDOException $e) {
    die("Could not connect to the database $name_db :" . $e->getMessage());
    }
?>
<table id="data-table-default" class="table">
    <thead>
    <tr>
    <th width="1%">#</th>
    <th width="1%" data-orderable="false"></th>
    <th>Name & Surname</th>
    <th>Gender</th>
    <th>Faculty</th>
    <th>Semester</th>
    <th>Mobile</th>
    <th></th>
    </tr>
</thead>

<tbody>
    <?php while ($row = $q->fetch()): ?>
    <tr class="odd gradeX">
    <td width="1%" class="f-s-600 text-inverse"><?php echo ($row['std_id']) ?></td>
    <td width="1%" class="with-img"><?php echo ($row['std_status']) ?></td>
    <td><?php echo ($row['std_name']) ?></td>
    <td><?php echo ($row['std_gender']) ?></td>
    <td><?php echo ($row['std_faculty']) ?></td>
    <td><?php echo ($row['std_semester']) ?></td>
    <td><?php echo ($row['std_mobile']) ?></td>
    <td align="right">
    <a href="student_profiles.php?std_id=<?php echo $row['std_id']; ?>" class="btn btn-warning btn-xs"><i class="fas fa-eye"></i> View</a>
    </td>
    </tr>
    <?php endwhile; ?>
    </tbody>
</table>

下面是 student_profile.php

<?php
require_once('include/database/sharepoint.php');
if(isset($_GET) & !empty($_GET)){
    $std_id = $_GET['std_id'];
    $sql = "SELECT * FROM `students` WHERE std_id=$std_id";
    $res = mysqli_query($connection, $sql);
}
?>

<h4><?php echo ($row['std_name']) ?></h4>

<div class="d-flex">
    <div class="pr-4"><strong>NATIONAL#</strong> <?php echo ($row['std_number']) ?></div>
    <div class="pr-4"><strong>DOB</strong> <?php echo ($row['std_dob']) ?></div>
    <div class="pr-4"><strong>GENDER</strong> <?php echo ($row['std_gender']) ?></div>
    <div class="pr-4"><strong>MOBILE</strong> <?php echo ($row['std_mobile']) ?></div>
</div>
<div class="pt-1 font-weight-bold">Master's Degree (MBA)</div>
<div>STD# <strong><?php echo ($row['std_id']) ?></strong></div>
<div><a href="#" target="new">email@example.com</a></div>

【问题讨论】:

  • 不确定问题是什么。有吗?
  • 那么,working 不是什么?你有error吗?
  • 我想通过点击 VIEW 按钮来查看学生资料,然后应该会打开 students_profile.php 页面,但我不知道该怎么做
  • 在 students_profile.php 文件中获取我想要的学生。 $std_id =$_GET['std_id'];并在您的查询中使用 SELECT * FROM students' where std_id = $std_id
  • @ShivendraSingh 你能告诉我这是怎么做的吗

标签: php mysql


【解决方案1】:

您不会从查询中删除数据。所以 $row 永远不会包含你期望的数组:

$row = mysqli_fetch_assoc($res); //this will populate $row

在您的代码中:

<?php
require_once('include/database/sharepoint.php');
if(isset($_GET) & !empty($_GET)){
    $std_id = $_GET['std_id'];
    $sql = "SELECT * FROM `students` WHERE std_id=$std_id";
    $res = mysqli_query($connection, $sql);
    $row = mysqli_fetch_assoc($res);
}
?>

【讨论】:

    猜你喜欢
    • 2016-03-11
    • 1970-01-01
    • 2012-12-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多