0

我有一个这种形式的数据库

  IDNo             Column1           Column2         .............    
  12341
  12342
  12343  
    .......

我正在向用户 n 提供一个表单,告诉用户在表单中输入 IDNO,以便用户可以检索相应的 idno 信息

如果用户在表单中输入 12341 并提交,则输出将是 12341 的信息,即 IDNO CUMN1 COLUMN2 ...... 12341 213 1231 ......

这将是输出,为此我使用以下代码

<form id="form" action="" method="post">
<td><p align="center"> Hallticket Number : <input type="text" name="id" id="id" maxlength="10"></p></td>
<input type="submit" id="submit" class='btnExample' value="Click here to get your Result">
</form>
<?PHP

$user_name = "admin";
$password = "123456";
$database = "exam";
$server = "localhost";
$db_handle = mysql_connect($server, $user_name, $password);
$db_found = mysql_select_db($database, $db_handle);

if ($db_found) {
$id = mysql_real_escape_string($_POST['id']);
$SQL = "SELECT * FROM jbit WHERE htno='$id'";
$result = mysql_query($SQL);
echo "
<center><table id='mytable' cellspacing='0'  border=3 align=center>
<tr>
<TH scope='col'>SUBJECT CODE</TH>
<TH scope='col'>SUBJECT</TH>
<TH scope='col'>INTERNAL MARKS</TH>
<TH scope='col'>EXTERNAL MARKS</TH>
<TH scope='col'>TOTAL MARKS</TH>
<TH scope='col'>CREDITS</TH>
<TH scope='col'>RESULT</TH>
</tr><center>";          

while ($db_field = mysql_fetch_assoc($result)) {


echo "<tr>";
echo "<td align=center>" . $db_field['subjectcode'] . "</td>";
if ($db_field['credits']=="0")
{
echo "<td align=center><font color='red'>" . $db_field['subject'] . "</font></td>";
} else {
echo "<td align=center>" . $db_field['subject'] . "</td>";
}
echo "<td align=center>" . $db_field['im'] . "</td>";
echo "<td align=center>" . $db_field['em'] . "</td>";
echo "<td align=center>" . $db_field['tm'] . "</td>";
echo "<td align=center>" . $db_field['credits'] . "</td>";
if ($db_field['credits']>"0")
{
echo "<td align=center> <font color='green'><b> PASS </b></font></td>";
} else {
echo "<td align=center> <font color='red'><b> FAIL </b></font> </td>";
}
echo "</tr>";

}

现在我想要的是,如果我的用户在表单中输入 1234 而不是 12341 或 12342 并提交

那么上面的代码不执行输出或显示无效的idno

但我想要的是,如果用户输入 1234 而不是 12341 或 12342 反之亦然或 123 而不是 12341 或 12342 反之亦然,那么输出应该是所有 IDNO 的所有信息都以 1234 或 123 开头,即

如果用户在表单中仅输入 12 或 1 或 123 或 1234 并提交,则输出不应为无效 idno 或空,它应显示所有以用户提交的值开头的列 idno ehich

首先输出应该是

   IDNO
  12341
  12342
  12343 with links 

如果用户点击 12341 那么输出应该是

 IDNO          COLUMN1            Column2            ...
12341            321                323             ....

应该做什么??

4

1 回答 1

0

您的 sql 应使用LIKE运算符:LIKE 运算符

$SQL = "SELECT * FROM jbit WHERE htno LIKE '$id%'";

那应该给你

$SQL = "SELECT * FROM jbit WHERE htno LIKE '1234%'";
于 2012-10-14T13:09:50.373 回答