0

このフォームのデータベースがあります

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

ユーザー n にフォームを提供して、ユーザーがそれぞれの idno 情報を取得できるように、フォームに IDNO を入力するようユーザーに伝えています。

ユーザーがフォームに 12341 を入力して送信すると、出力は 12341 の情報、つまり IDNO COUMN1 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>";

}

今私が欲しいのは、ユーザーがフォームに12341または12342の代わりに1234を入力して送信する場合です

次に、上記のコードは出力を実行しないか、無効な idno を表示します

しかし、ユーザーが12341または12342の代わりに1234を入力した場合、または12341または12342の代わりに123を入力した場合、出力は1234または123で始まるすべてのIDNOのすべての情報になるはずです。

ユーザーがフォームに 12 または 1 または 123 または 1234 のみを入力して送信した場合、出力は無効な idno または空であってはならず、ユーザーが送信した値で始まるすべての列 idno が表示されます。

最初の出力は

   IDNO
  12341
  12342
  12343 with links 

ユーザーが 12341 をクリックすると、出力は次のようになります。

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

何をすべきか??

4

1 に答える 1

0

あなたのSQLは演算子を使用する必要がありますLIKELIKE演算子

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

それはあなたに与えるはずです

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