3

我想从 mysql 中搜索数据并需要将其显示在表格中。这里数据搜索成功,但数据没有显示在表格中,而是显示在一条直线上。这里使用 $output 方法。我的编码是

表单.php

<html dir="ltr" lang="en-US" >
<head>
<meta charset="UTF-8" />
<title>Search</title>
</head>
<body>
<h1>Seacrh By Name</h1>
<form action="search.php" method="get">
  <label>Name:
  <input type="text" name="keyname" />
  </label>
  <input type="submit" value="Search" />
</form>
</body>
</html>

搜索.php

<?php

//capture search term and remove spaces at its both ends if the is any
$searchTerm = trim($_GET['keyname']);

//check whether the name parsed is empty
if($searchTerm == "")
{
echo "Enter name you are searching for.";
exit();
}

//database connection info
$host = "xx"; //server
$db = "xx"; //database name
$user = "xx"; //dabases user name
$pwd = "xx"; //password

 //connecting to server and creating link to database
$link = mysqli_connect($host, $user, $pwd, $db);

//MYSQL search statement
$query = "SELECT * FROM customer_details WHERE id LIKE '%$searchTerm%'";

$results = mysqli_query($link, $query);

/* check whethere there were matching records in the table
by counting the number of results returned */
if(mysqli_num_rows($results) >= 1)
{
    $output = "";
    while($row = mysqli_fetch_array($results))
{


$output .= "id: " . $row['id'] . "&nbsp;&nbsp;&nbsp;&nbsp;";
$output .= "name: " . $row['name'] . "&nbsp;&nbsp;&nbsp;&nbsp;";
$output .= "Telephone: " . $row['Telephone'] . "&nbsp;&nbsp;&nbsp;&nbsp;";
$output .= "E_mail: " . $row['E_mail'] . "&nbsp;&nbsp;&nbsp;&nbsp;";
$output .= "visa_category: " . $row['visa_category'] . "&nbsp;&nbsp;&nbsp;&nbsp;";
$output .= "other_category: " . $row['other_category'] . "&nbsp;&nbsp;&nbsp;&nbsp;";
$output .= "passport_no: " . $row['passport_no'] . "&nbsp;&nbsp;&nbsp;&nbsp;";
$output .= "remarks: " . $row['remarks'] . "&nbsp;&nbsp;&nbsp;&nbsp;";

}
echo $output;
}
else
    echo "There was no matching record for the name " . $searchTerm;
?>

如何在 html 表中显示我的数据。

4

2 回答 2

4

$output只是在输出数据本身。让它也输出一个HTML 表格

echo '<table>
    <tr>
        <th>ID</th>
        <th>Name</th>
    </tr>';

while ($row = mysqli_fetch_array($results)) {
    echo '
        <tr>
            <td>'.$row['id'].'</td>
            <td>'.$row['name'].'</td>
        </tr>';

}

echo '
</table>';

顺便说一句,不要直接向下滚动到代码,还要查看有关何时/如何使用表格的警告。

于 2013-06-26T11:27:17.290 回答
1
<?php
include("include/connect.php");
$emp_id = $_POST['emp_id'];
$sqlStr = "SELECT * FROM `employee` ";
//echo $sqlStr . "<br>";
$result = mysql_query($sqlStr);
$count = mysql_num_rows($result);


echo '<table>
    <tr>
        <th>Employee ID</th>
        <th>Name</th>
        <th>date of joining</th>
        <th>date of living in service</th>
        <th>salary</th>
    </tr>';

while ($row = mysql_fetch_array($result)) {
    echo '
        <tr>
            <td>'.$row['emp_id'].'</td>
            <td>'.$row['name'].'</td>
            <td>'.$row['DOJ'].'</td>
            <td>'.$row['DLS'].'</td>
            <td>'.$row['salary'].'</td>
        </tr>';

}

echo '
</table>';
?> 
于 2016-09-23T06:42:23.280 回答