0

私はここでは初めてで、Web ベースのプログラミングも初めてです。私はショップのデータベースを持っていて、今はそのサイトを作っています。そのデータベースには、すべての製品に ID、色、コード、およびサイズがあるテーブル call stock があります。そのカラー コードとサイズは複合キーとして機能します。また、価格もあります。

今私のサイトで私はページ「salse.php」を作成します。ここで、入力はコード、色、サイズで、オプションのドロップダウンメニューを選択します

<label for="code">Code</label> <select name="code" size="1" id="code"> <option selected="selected">Choose One</option> <option>L</option> <option>G</option> <option>S</option> <option>B</option> </select> そのように。[1]ユーザーがその3つのフィールドコード、色、サイズを入力すると、Javaスクリプトがデータベースから販売価格を自動的に見つけて、価格フィールドに配置するようになりました。

[2] その後、ユーザーがその数量ラベルに入力すると、数量フィールドの値に価格フィールドの値を掛けて合計価格が自動的に生成され、合計フィールド内に出力されます。

私は試しましたが、ここに私のコードがあります

<this script will use to get price value -->
 <script type="text/javascript">
function price(str)
    {
    if (str =="")
    {
        price =document.getElementById('salse');
        price.value = Number (0);
        return;
    }
    if(window.XMLHttpRequest)
    {
        xmlhttp = new XMLHttpRequest();
    }
    xmlhttp.onreadystatechange= function()
    {
        if (xmlhttp.readyState ==4 && xmlhttp.status ==200)
        {
            price =document.getElementById('salse');
            price.value = Number(xmlhttp.responseBody);
                    }
    }
    xmlhttp.open("GET","price.php?q="+str,true);
    xmlhttp.send();
  }
  </script> 

そして、フィールドは<?php Echo " <label for='size'>Size</label> <select name='size' size='1' id='size' **onchange= 'price(this.value)**'> <option selected='selected'>Choose Size</option>"; $size = 0; while($size <= 50) { Echo"<option>";echo $size; Echo"</option>"; $size++; } Echo"</select>"; price.php内で、このコードは`のようです

  while($row = mysql_fetch_array($result))
  {
     echo $row['salse_price'] ;

  }`

しかし、出力は「未定義」です..これを解決するのを手伝ってください。文字列を出力できますが、フィールドの値を変更する方法.

`<this script will use when to get total value -->

    <label for="quantity">Q'ty</label>
    <input type="text" name="quantity" id="quantity" value="" /> <br> 
    <label for="salse">Salse Price:</label>
    <input type="text" name="salse" id="salse" size="20" value=""/>&nbsp;<br>
    <label for ="total">Total</label>
    <input type="text" name="total" id="total" size="20" value =""/><br>
    <script type="text/javascript">
        var x    = document.getElementById('quantity'),
        y    = document.getElementById('salse'),
        total = document.getElementById('total');

        function calculate_total(){
         // Use your real calculation here
        total.value = Number(x.value) * Number(y.value) ;
        }

     if( window.addEventListener ) {
       x.addEventListener('change', calculate_total, false);
       y.addEventListener('change', calculate_total, false);
     } else if(window.attachEvent){
        x.attachEvent('onchange', calculate_total);
        y.attachEvent('onchange', calculate_total);
      }
    </script> `

数量と価格の両方のユーザー入力によって合計ラベル値を入力できるようになりました..ただし、3 つのフィールド値が入力されているかどうかを確認できず、データベースから価格値を出力することもできません。

4

1 に答える 1

0

サーバー側で動作する言語/システムが必要です。これは、データを取得し、タグ付けした PHP など、クライアントに送信する HTML を生成します。

この Web サイトは、あらゆる Web の出発点として最適です。

于 2013-04-14T08:26:16.713 に答える