0

ユーザーが顧客名を選択すると、データベースから実行時にその顧客の住所と市区町村を入力します。そのために、変更時にjavascript関数を呼び出し、そこからphp関数addfun()を呼び出して、クエリのキー値。以下のコードを書きますが、うまくいきません。

    <script language='javascript' type='text/javascript'>
function ILovePHP(frm, a) {
var formName = frm.name;  
    alert(formName);  
b=<?php addfun(formName,a);?>;  

alert(b);
}
</script>

    <?php 

 $attrs = array("onChange" =>    "ILovePHP(this.form, this.value);");   


require_once "HTML/QuickForm.php";
require_once "HTML/QuickForm/Renderer.php";
  $form = new HTML_QuickForm('customer_master', 'post');  

  $form->addElement('select','custName','Select Customer Name',$cnameAry,$attrs);  
  $form->addElement('text', 'custAdd', 'Customer Address');  
  $form->addElement('text','custCity', 'City'); 
  $form->addElement('text','custState', 'State');  

  $form->display();

  function addfun($frm, $p)
{

$query="Select  Address, City  from entityMaster where eid=$p ";


$link = mysql_connect('localhost', 'root', ''); 
if (!$link) {
    die('Could not connect: ' . mysql_error());
}
mysql_select_db('GenInsurance');
$result=mysql_query($query);

$row=mysql_fetch_array($result);

$frm->setDefaults(array( 'custAdd'   => $row['Address'])); 
$frm->setDefaults(array( 'custCity'   => $row['Address'])); 

print $frm;
return $frm;
}

?>
4

1 に答える 1

1

jquery と ajax を使用して、php ファイルから住所と都市を取得します。

ajax.php というファイルを作成します。

if(isset($_GET['name']))
{

$p = $_GET['name'];

$query="SELECT Address, City FROM entityMaster WHERE eid=$p ";

$link = mysql_connect('localhost', 'root', ''); 
if (!$link) {
    die('Could not connect: ' . mysql_error());
}
mysql_select_db('GenInsurance');
$result=mysql_query($query);

$row=mysql_fetch_array($result);

$output = array('custAdd' => $row['Address'], 'custCity' => $row['Address']);

echo json_encode($output);

}

Onchange で都市と住所を取得します。

<script src="http://code.jquery.com/jquery-1.7.2.min.js"></script>
$('#custName').change(function(){

    $.getJSON("ajax.php", { name: $(this).val() } , function(data){
        $.each(data, function(key, value) {
            if(key == "custCity"){
                $('#custCity').val(value);
                }
                if(key == "custAdd"){
                $('#custAdd').val(value);
                }   

        });
    });
});

ajaxjqueryの詳細をお読みください。

于 2012-05-14T10:52:36.890 に答える