0

フォームを送信せずに、値が一致する 2 つの textboxes テキスト ボックスのいずれかの値を確認したい。keypress イベントがこれを処理し、値を jour_info.php ページから get_sid.php ページに送信します。私は2つのファイルを持っています

  1. jour_info.php
  2. get_sid.php

最初のファイルのコード

<form method="post" name="journ_form" >
P-ISSN/ISBN<br/><input name="printissn" id="printissn_input" type="text" value="">
                                            <input type="text" name="pissnsid" id="pissnsid" style="width: 30px;" autocomplete="off" value="">

                                            <span style="color: red;" id="feedback"></span>
 </form>

<script type="text/javascript">
 $(document).ready(function(){
$('#feedback').load('get_sid.php').show();

$('#printissn_input').keyup(function(){

    $.post('get_sid.php', {printissn: journ_form.printissn.value},
    function(result) {
        //$('#feedback').html(result).show();
        document.getElementById('pissnsid').value = result;
    }); 
});


$('#pissnsid').keyup(function(){
    $.post('get_sid.php', {pissnsid: journ_form.pissnsid.value},
    function(result) {
        document.getElementById('printissn_input').value = result;
    });
});
});

2 番目のファイルのコード

<?php
 include 'auth.php';

 $printissn = $_POST['printissn'];
 $pissnsid = $_POST['pissnsid'];

 if($printissn){
$check = mysql_query("SELECT printissn, pissnsid FROM jour_entries WHERE   printissn='$printissn'");
$check_num_rows = mysql_num_rows($check);
while($row = mysql_fetch_array($check)){
    //$get_printissn = $row['printissn'];
    $get_printissnsid = $row['pissnsid'];
    if($check_num_rows == 0){
        echo '';
    } else if($check_num_rows == 1){
        echo $get_printissnsid; 
    }
}
  } else if($pissnsid){
  $check = mysql_query("SELECT printissn, pissnsid FROM jour_entries WHERE pissnsid='$pissnsid'");
  $check_num_rows = mysql_num_rows($check);
  while($row = mysql_fetch_array($check)){
$get_printissn = $row['printissn'];
//$get_printissnsid = $row['pissnsid'];
if($check_num_rows == 0){
    echo '';
} else if($check_num_rows == 1){
    echo $get_printissn;    
} 
 }
} 
?>

問題は、最初のテキスト ボックスに値を入力すると、対応する一致が 2 番目のテキスト ボックスに表示されることです。ただし、値が 2 つのフィールドと一致せず、ユーザーが手動でデータを入力する必要がある場合、問題が発生します。一致するものがなく、ユーザーが最初のテキスト ボックスに値を入力すると、2 番目のテキスト ボックスの値が消えます。それを解決する方法は?

4

1 に答える 1