php 从文本框搜索和回显的 pdo 代码

php pdo code to search and echo from textbox

我的表单有 receipt_no 个文本框..

我需要搜索有关文本框模糊事件或文本框按键事件的数据。

从这个 receipt_no textbox.I 需要搜索数据库并在另一个文本框中回显值...

请帮忙...

<?php
function  myFunction()
{
if(isset($_POST['receipt_no']))
{       
    $receipt_no = $_POST['receipt_no']; 
    $result = $database->getRow("SELECT receipt_no,scheme_name FROM scheme_master where receipt_no = :receipt_no",array(':receipt_no'=>$receipt_no));
    if($result!=0)
    {   
        while ($row = $result->fetchObject())
         {
          echo $row->scheme_name;
         }
    }
}
}
?>
<form action="" method="post">
    <input type="text"  name="receipt_no" onblur="myFunction()" />
</form>

此文本框内的回显值---

<input type="text" value="<?=$scheme_name;?>" name="scheme" class="field size2" />

正确的两种方法,仅 PHP 和 AJAX javascript 正如一些人提到的。

仅第一个PHP:

<? $db=new PDO();
if($_POST&&isset($_POST['submit'])){
    $result=$db->prepare('SELECT receipt_no,scheme_name FROM scheme_master WHERE receipt_no=:receipt_no');//not sure why you're entering an array?
    $result->bindParam(':receipt_no',$_POST['scheme'],PDO::PARAMETER);
    $result->execute();
    while($row=$result->fetch(PDO::FETCH_ASSOC)){
        echo$row['scheme_name'];
    }
}?>
<!--Form next-->
<form name='findReceipt' action='' method="POST">
    <input name='scheme' type='text' value='<?echo$scheme_name;?>'/>
    <input name='submit' type='submit' value='Get'/>
</form>

您不需要此方法的属性 onblur 属性。这是一个'self'操作页面的方法。

下一个方法是 javascript 方法,其中可以使用 onblur 属性:

myFunction(){
    var xmlhttp=XMLHttpRequest();
    xmlhttp.open('POST','getResult.php',false);
    xmlhttp.send("receipt_no="+this.value);//if this doesn't work, use the following line
    //document.getElementByName('scheme').value
    document.getElementById('resultHere').innerHTML=xmlhttp.responseText;
}

以上是一个非常基本的功能,它在 IE5-6 中不起作用,可能需要一些 header 数据等。还有!对于那些喜欢傻图书馆的人 jQuery

$('input[name="scheme"]').blur(function(){
    var self=this;
    $.ajax({
        type:'POST',
        data:{receipt_no:$(self).value()},
        beforeSend:function(xhr){
            if($(self).value().length<5)xhr.abort();
        },
        success:function(result){
            $('#result').html(result);
        }
    });
}

有些人可能会争辩说使用 GET 方法而不是 POST 但我总体上更喜欢 POST。