1

私は保険フォームをプログラミングしています。所有している会社を選択すると、データベースから電話番号やその他の値にアクセスし、以下のフォームに入力します。次に、必要な情報を入力するだけです。

$hostname = "";
$username = "";
$password = "";
$database = "";

mysql_connect($hostname,$username,$password);
@mysql_select_db($database) or die( "Unable to select database");

//getFN();
function getFN()
{
    $query = "SELECT first FROM contacts";
    $FNresult = mysql_query($query); 


    $dropdown = "<select name='contacts'>";

    while( $row = mysql_fetch_assoc($FNresult) )
    {
        $dropdown .= "\r\n<option value='{$row['first']}'>{$row['first']}</option>";
        echo getLN();
        //$last .="\r\n<option value='{$row['last']}'>{$row['last']}</option>";
        //echo $last;
    }

    $dropdown .= "\r\n</select>";

    echo $dropdown;
}

// Get last name
function getLN()
{
    $query = "SELECT last FROM contacts";
    $LNresult=mysql_query($query);

    $last;
    while($row = mysql_fetch_assoc($LNresult))
    {
        $last = "{$row['last']}";
    }
    echo $last;
} //end getLN


mysql_close();
?>

<select name="fdsfd" onchange="document.getElementById('first').value = this.value">
    <!-- <option value="<?//php echo $first; ?>"></option>-->
</select>

<form action="insert.php" method="post">
    First Name: <input type="text" id="first" value=""><br>
    Last Name: <input type="text" id="last"><br>
    Phone: <input type="text" id="phone"><br>
    Mobile: <input type="text" id="mobile"><br>
    Fax: <input type="text" id="fax"><br>
    E-mail: <input type="text" id="email"><br>
    Web: <input type="text" id="web"><br>
    <input type="Submit">
</form>
4

1 に答える 1

-2

AJAX と PHP を組み合わせて使用​​し、サーバー (DHTML) からの応答に基づいてページ ソースを動的に変更する必要があります。

まず、AJAX を理解する必要があります: SO question on how AJAX works

次に、jQuery の理解が必要です:チュートリアルはこちら

さて、

JavaScript が要素を一意に識別する方法が必要です。id 属性と、指定した名前を付けます。

要素がid属性を持つと、jQuery は ID セレクターを使用してそれにアクセスできます

$("#[id]")...

バックグラウンド スクリプトは、ドロップダウンから一意の識別子を取得し、データベースからデータを取得して、JSON でエンコードされた配列に入力する必要があります。

次に、フォーム要素を入力できます。

<?php
// background script

// retrieve data based on $_POST variable, set to $returnArray

/****************************
 * the structure of returnArray should look something like
 *     array(
 *         'first' => firstName,
 *         'last' => lastName,
 *         etc.
 *     )
 */

echo json_encode($returnArray);

=========================

<!-- javascript on client-side -->
<script language="javascript" type="text/javascript">
    $("#dropdown").on('change', function() {
        $.post("backgroundScript.php", {
                uid: $(this).val()
            } function(data) {
               $("#first").val(data.first);
               $("#last").val(data.last);
               // etc.
            }, 'json'
        );
    });
</script>
于 2012-08-06T19:13:15.890 に答える