【发布时间】:2020-12-02 20:14:05
【问题描述】:
我需要一些帮助来编写电子商店网络本地系统中的代码
- 我在 phpmyadmin 数据库中有一个 stoke 表
- -stoke table(id,name,price,stoketype)
- -stoketype必须有这种数据(电话、电脑、配件等......)
- 我在 html5 中有 2 个组合框 和 1 个 文本框
- 第一个是显示stoke中的所有stoke types 表(完美运行)
- 第二个是显示所有的electronics(name)从stoke 具有我在 第一个组合框中选择的 stoketype 的表格
- 文本框用于显示电子(名称)的价格 我在第二个组合框中选择之前我的目标是有一个结果 像这样
- 电话 - iphone 6s - 300 美元
- 电话 - iphone 7 - 400$
- 电脑 - 惠普笔记本 15a - 600 美元
问题是我不知道根据第一个组合框中的选定值填充第二个组合框和文本框,因为我需要连接数据并组织任何帮助:(
第一个组合框
<select class="form-control" name="transt" size="1" id="input3" placeholder="stoke type">
<?php
$q = "select distinct stoketype from stoke";
$r = @mysqli_query($db, $q);
$num = mysqli_num_rows($r);
if($num > 0) {
while($row = mysqli_fetch_array($r, MYSQLI_ASSOC)) {
$stkn= $row['stoketype'] ;
echo"<option value='".$stkn."' >".$stkn."</option>";
}
mysqli_free_result ($r);
} ?>
</select>
第二个组合框
<select class="form-control" id="select1" name="stokn" size="1" value="stok">
<?php
$q = "select * from stoke where stoketype=??? ";
$r = @mysqli_query($db, $q);
$num = mysqli_num_rows($r);
if($num > 0) {
while($row = mysqli_fetch_array($r, MYSQLI_ASSOC)) {
$stkname= $row['name'] ;
$price=$row['price'] ;
echo"<option value='".$stkname."'>".$stkname.'"</option>";
}}
?>
</select>
文本框代码
<input type="text" name="stprice" value=<?php ?> class="form-control" id="input9" placeholder="price" >
现在可以使用此代码,无需刷新页面 我必须制作 3 个数组来吃掉我所有的数据作为一个新的数据库
<script>
var arr = [];
var arr2 = [];
var arr3 = [];
</script>
<?php
$q = "select * from stoke ";
$r = @mysqli_query($db, $q);
$num = mysqli_num_rows($r);
if($num > 0) {
while($row = mysqli_fetch_array($r, MYSQLI_ASSOC)) {
?>
<script> arr.push("<?php echo$row['name'];?>");</script>
<script> arr2.push("<?php echo$row['stoketype'];?>");</script>
<script> arr3.push("<?php echo$row['price'];?>");</script>
<?php
然后创建一个函数来读取数组数据并处理我想要的数据 在一个新的选项(节点) 当然,我每次都需要清除该选项,因为它只会重复
function f3(){
var x1 = document.getElementById("input3").value;
var i;
var select = document.getElementById("select1");
var length = select.options.length;
for (i = length-1; i >= 0; i--) {
select.options[i] = null;
}
for(i=0; i < arr.length; i++)
{
if(x1==arr2[i]){
var sel = document.getElementById('select1');
var opt = document.createElement('option');
// create text node to add to option element (opt)
opt.appendChild( document.createTextNode(arr[i]) );
// set value property of opt
opt.value = arr[i];
// add opt to end of select box (sel)
sel.appendChild(opt);
}}}
【问题讨论】:
标签: javascript php html mysql