カンマで区切られたIDを分離し、ドロップダウンリストに表示するために少し助けが必要です。aで区切られた列のID番号を区切ります。
clothing_type_idに数字が1つしかない場合、衣服タイプIDの数字が1つしかない場合、それはうまく動作します。数字を追加すると、カンマで区切られます(1,2,3,4)。長い仕事、私は爆発を使用する必要があると確信していますが、私はそれを働かせることはできません。どんな助けもありがとう。
<? $clothing=intval($_GET['clothing_var']);
include 'classes.php';
mysql_select_db('database');
$query="SELECT ID,Qty_Values FROM Quantity WHERE Clothing_Type_ID='$clothing'";
$result=mysql_query($query);
$test=explode(',', '$result');
?>
<select name="state" onchange="getCity(<?=$clothing?>,this.value)">
<option>Select State</option>
<? while($row=mysql_fetch_array($test)) { ?>
<option value=<?=$row['ID']?>><?=$row['Qty_Values']?></option>
<? } ?>
</select>
UPDATE:
は、ここで私はTODOをしようとしているものです。
こんにちは、あなたのコードを貼り付けて、それは動作しますが、私は何も表示されない2番目のIDをクリックすると、それは最初の選択をもたらすだけです。私のデータベーステーブルはこのようになり、Clothing_Typeと呼ばれる第1の選択肢にはIDのGarmentとPriceという3つのカラムがあり、2つ目のテーブルには4つのカラム、ID、Clothing_Type_ID、Qty_Valuesおよびpriceがあります。基本的には私がしようとしているのは、価格ガイドを作ることです。最初の選択欄でTシャツを選択すると、フォームの最後に4つの価格が表示されます。各項目に1つ、合計金額に2つより高い金額)3 VATと4合計金額。選択が選択されるたびに自動的に価格が更新されます。私は3つまたは4つの選択ボックスを選択した後、私はそれらがチェックされている場合、いくつかのチェックボックスを再度価格を更新したい。
アップデート2:ここでJSとHTML
JS
<script language="javascript" type="text/javascript">
function getXMLHTTP() {
var xmlhttp=false;
try{
xmlhttp=new XMLHttpRequest();
}
catch(e) {
try{
xmlhttp= new ActiveXObject("Microsoft.XMLHTTP");
}
catch(e){
try{
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
}
catch(e1){
xmlhttp=false;
}
}
}
return xmlhttp;
}
function getQty(countryId) {
var strURL="findQty.php?clothing_var="+countryId;
var req = getXMLHTTP();
if (req) {
req.onreadystatechange = function() {
if (req.readyState == 4) {
// only if "OK"
if (req.status == 200) {
document.getElementById('qtydiv').innerHTML=req.responseText;
} else {
alert("There was a problem while using XMLHTTP:\n" + req.statusText);
}
}
}
req.open("GET", strURL, true);
req.send(null);
}
}
function getCity(countryId,stateId) {
var strURL="findCity.php?clothing_var="+countryId+"&qty_var="+stateId;
var req = getXMLHTTP();
if (req) {
req.onreadystatechange = function() {
if (req.readyState == 4) {
// only if "OK"
if (req.status == 200) {
document.getElementById('citydiv').innerHTML=req.responseText;
} else {
alert("There was a problem while using XMLHTTP:\n" + req.statusText);
}
}
}
req.open("GET", strURL, true);
req.send(null);
}
}
</script>
私はあなただけのカンマで区切られた文字列と比較するのではなく、IN()
演算子を使うべきだと思うHTML
<body>
<form method="post" action="" name="form1">
<?
include 'classes.php';
$query="SELECT ID,Garment FROM Clothing_Type";
$result=mysql_query($query);
?>
<select name="clothing_type" onChange="getQty(this.value)">
<option>Select Clothing Type</option>
<? while($row=mysql_fetch_array($result)) { ?>
<option value=<?=$row['ID']?>><?=$row['Garment']?></option>
<? } ?>
</select>
<p id="qtydiv">
<select style="width: 150px;" name="qty" disabled='disabled'>
<option>Select Country First</option>
</select>
</p>
<p id="citydiv">
<select style="width: 150px;" name="city" disabled='disabled'>
<option>Select State First</option>
</select>
</p>
<input type="checkbox" name="vehicle" value="Bike" /> I want to live here<br />
<form>
<input type='checkbox' name='1' value='1'id='checkbox_1' />1<br>
<input type='checkbox' name='2' value='2'id='checkbox_2' />2<br>
<input type='checkbox' name='3' value='3'id='checkbox_3' />3<br>
</form>
</body>
ANDを使用するようにクエリを変更する必要があります.SQL注入攻撃に対して開いていないようにしたくない場合もあります。 – BeRecursive
$ clothing変数には何が含まれていますか? –
こんにちはマット、最初の選択ボックスからの結果、2番目の更新を参照してくださいhtmlとjs、うまくいけば、より良い理解を与えるでしょう – Dan