Solved

How Do I make a select box change on below select boxes according to above one

Posted on 2009-04-09
1
624 Views
Last Modified: 2012-05-06

I am in a problem with select box thing. In our display there are a number of select boxes from top to Bottom ..  When I Change one value in Top select Box the corresponding change must occur
in Below select boxes.   The Data Retrieved from corresponding tables.


 I have some Select Boxes.
 Top one is CARD SIZE Box , below one is COLOR BOX , CODING OPTION BOX, then CORNER OPTION BOX (I am not mention any other select boxes which don't need that Dynamic Change).

When Visit first time they show the Default value of Table. When I First Select SIZE BOX The
 corresponding change occur in color BOX , IT's Done through AJAX. But on the COLOR BOX
change i need to change the value of Coding Option Select box. How it can possible.

Please visit site http://sacdigital.com/business-cards-c-1.html  It's the application I really need.

 please Help quickly Thanks in advance.... I attach Some of my Code ... pls help

 
Main Page Displaying select Boxes
tprinting.php
-----------------------------------
 
 
<?php
session_start();
require_once("classes/DB.Class.php");
include_once "session.php";
__autoload("Cart");
 
/*function getName($id)
{
$obj=new DBCon();
//$obj->table_name = "tbl_print_type";
$obj->table_name = "tbl_printing";
$obj->sel_condition="id = '$id' ";
$obj->res_array = array('id','feature');
$res=$obj->SelectSQL();	
$values=$obj->Fetch($res); 
return $values[0]['feature'];
}*/
//index.php?module=instyle&mode=printing
$obj=new DBCon();
//$sql = "select * from tbl_printing where id in(1,2)";
$sql = "select * from tbl_cardsize";
$resultsql = mysql_query($sql) or die("Query Error");
?> 
 
 
<div class="stepshd">
 
<div class="arrow"></div>
 
<div class="stepstxt">FEATURED PRODUCTS</div>
 
</div>
 
<script src="js/selectproduct.js"></script>
<div id="productList">
<form name="frm" method="post" action="">
 
<!--<strong>Product</strong><br/> 
<select  name="product" onchange="getValues(this.value)"> -->
 
 
 
<!--<select name="product" onchange="change()"> -->
<!--<option  value="Select Product">Select Product</option> -->
<?php
//for($i=0;$i<count($this->name);$i++)
//{ 
 
?> 
 
<!--<option   value="<?php //echo $this->id[$i]; ?>"><?php //echo $this->name[$i]; ?></option> --> 
<!--<option   value="2">Printing</option> --> 
<?php
//}
?><!--</select> --> 
 
 
 
<strong>Size</strong>
<br/>
<select name="size" id="size" onchange="getValues(this.value)" >
<?php 
//for($i=0;$i<count($this->name);$i++)
//for($i=0;$i<count($this->feature);$i++)
while($row = mysql_fetch_array($resultsql))
{ ?>
<option value="<?php echo $row['price']."+".$row['id']; ?>" ><?php echo $row['name']; ?> </option>
<?php
}
?>
</select>
<br/>
 
 
 
 
 
<div id="first">
<?php
$sqlcolor = "select * from tbl_print_small where type='color'";
$resultcolor = mysql_query($sqlcolor) or die("Error in color selection");
 
 
?>
 
 
 
<strong>Color</strong>
<br/>
 
<select name="color" id="color" onchange="changeValue()" >
 
<?php
while($rowcolor = mysql_fetch_array($resultcolor)) {?> 
<option value="<?php echo $rowcolor['price']; ?>" > <?php echo $rowcolor['feature']; ?></option>
<?php } ?>
</select>
<br />
 
 
 
 
<strong>Card Stock</strong>
<br/>
<?php
$sqlstock = "select * from tbl_print_small where type='cardstock'";
$resultstock = mysql_query($sqlstock) or die("Error in card stock selection");
 
 
?>
 
 
 
<select name="cardstock" id="cardstock" onchange="changeValue()"> 
<?php
while($rowstock = mysql_fetch_array($resultstock)) {?> 
<option value="<?php echo $rowstock['price']; ?>" > <?php echo $rowstock['feature']; ?></option>
 
<?php } ?> 
</select>
<br />
 
 
 
 
<strong>Coating Options</strong>
<br/>
<?php
$sqlcoat = "select * from tbl_print_small where type='coatingoption'";
$resultcoat = mysql_query($sqlcoat) or die("Error in coating option selection");
 
 
?>
 
 
 
<select name="coatingoption" id="coatingoption" onchange="changeValue()"> 
<?php
while($rowcoat = mysql_fetch_array($resultcoat)) {?> 
<option value="<?php echo $rowcoat['price']; ?>" > <?php echo $rowcoat['feature']; ?></option>
 
 
<?php } ?>
</select>
<br />
 
 
 
<strong>Corner Option</strong>
<br/>
<?php
$sqlcorner = "select * from tbl_print_small where type='corneroption'";
$resultcorner = mysql_query($sqlcorner) or die("Error in corner option selection");
 
 
?>
 
 
 
<select name="corneroption" id="corneroption" onchange="changeValue()"> 
<?php
while($rowcorner = mysql_fetch_array($resultcorner)) {?> 
<option value="<?php echo $rowcorner['price']; ?>" > <?php echo $rowcorner['feature']; ?></option>
 
<?php } ?>
</select>
<br />
 
 
 
 
 
<strong>Quantity</strong>
<br/>
<?php
   $sqlquantity = "select * from tbl_printing_quantity";
   $resultquantity = mysql_query($sqlquantity) or die("Error in Quantity selection");
   ?>
 
 
<select name="quantity" id="quantity" onchange="changeValue()">
<?php
while($rowquantity = mysql_fetch_array($resultquantity)) {?> 
<option value="<?php echo $rowquantity['quantityPrice']; ?>" > <?php echo $rowquantity['quantity']; ?></option>
<?php } ?>
</select>
<br />
 
 
 
<strong>Proof</strong>
<br/>
<?php
$sqlproof = "select * from tbl_print_small where type='proof'";
$resultproof = mysql_query($sqlproof) or die("Error in proof selection");
 
 
?>
 
<select name="proof" id="proof" onchange="changeValue()"> 
<?php
while($rowproof = mysql_fetch_array($resultproof)) {?> 
<option value="<?php echo $rowproof['price']; ?>" > <?php echo $rowproof['feature']; ?></option>
<?php } ?>
 
</select>
<br />
 
 
 
<strong>Shipping</strong>
<br/>
<?php
$sqlship = "select * from tbl_print_small where type='shipping'";
$resultship = mysql_query($sqlship) or die("Error in shipping selection");
 
 
?>
 
<select name="shipping" id="shipping" onchange="changeValue()"> 
<?php
while($rowship = mysql_fetch_array($resultship)) {?> 
<option value="<?php echo $rowship['price']; ?>" > <?php echo $rowship['feature']; ?></option>
<?php } ?>
 
</select>
<br />
</div>
 
 
 
 
 
 
<!--<br/> -->
 
 
 
<div id="txtHint"></div> 
<div id="message"></div>
 
<input type="submit" name="update" value="Update" class="button2"/>
</form>  
</div>
<div class="stepshd">
<div class="arrow"></div>
<div class="stepstxt">EASY STEPS FOR ORDER</div>
</div>
<div >
 <img src="images/1.jpg" />
<div class="order">Order online 24hrs  a  day or by phone -<span class="style2"> 800-431-5060</span></div>
<div class="yellowbuttn"><a href="index.php?module=instyle&mode=reg" class="yellowlink">Get Started Now</a></div>
</div>
<script language="javascript" type="text/javascript">
 
 
function changeValue()
{
//var sizeval = document.getElementById('size').value;
//alert("size "+sizeval);
var colorval = document.getElementById('color').value;
//alert("color "+colorval);
var cardstockval = document.getElementById('cardstock').value;
//alert("card "+cardstockval);
 
var coatingoptionval = document.getElementById('coatingoption').value;
 
var corneroptionval = document.getElementById('corneroption').value;
var quantityval = document.getElementById('quantity').value;
var proofval = document.getElementById('proof').value;
var shippingval = document.getElementById('shipping').value;
//alert("size"+sizeval+"colorval"+colorval+"card "+cardstockval+"coating "+coatingoptionval+"corner "+corneroptionval+"quantity "+quantityval+" proof "+proofval+" shipping "+shippingval);
 
var total = (parseInt(colorval)+parseInt(cardstockval)+parseInt(coatingoptionval)+parseInt(corneroptionval)+parseInt(proofval)+parseInt(shippingval))*parseInt(colorval);
//alert("Total value is "+total);
 
document.getElementById('message').innerHTML = "Total Amount is "+total;
}
</script>
----------------------------------------------------------------
  Ajax ---Calling Javascript file (js/selectproduct.js)
var xmlHttp;
function getValues(str)
{ 
xmlHttp=GetXmlHttpObject();
if (xmlHttp==null)
 {
 alert ("Browser does not support HTTP Request");
 return;
 }
var url="phpfiles/getProducts.php";
url=url+"?q="+str;
url=url+"&sid="+Math.random();
xmlHttp.onreadystatechange=stateChanged;
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
}
function stateChanged() 
{ 
if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
 { 
  document.getElementById("first").innerHTML="";
 document.getElementById("txtHint").innerHTML=xmlHttp.responseText;
 } 
}
function GetXmlHttpObject()
{
var xmlHttp=null;
try
 {
 // Firefox, Opera 8.0+, Safari
 xmlHttp=new XMLHttpRequest();
 }
catch (e)
 {
 //Internet Explorer
 try
  {
  xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
  }
 catch (e)
  {
  xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
 }
return xmlHttp;
}
 
---------------------------------------------------------------------
Ajax Calling Server Script (getProducts.php)
<?php
$q=$_GET["q"];
//echo "q is ".$q;
list($first, $second) = split(' ', $q);
$con = mysql_connect('localhost', 'designer_scott', 'anitha');
if (!$con)
 {
 	die('Could not connect: ' . mysql_error());
 }
mysql_select_db("designer_scott", $con);
 
//Change Color Here
//$sql="SELECT DISTINCT itemDesc FROM tbl_products WHERE item = '".$q."'";
 
 $sql = "SELECT * FROM tbl_color WHERE cardId = '".$second."'";
 
$result = mysql_query($sql);
?>
<!--<strong>Size</strong> -->
<strong>Color</strong>
<br/>
<select  name="color">
<?php
while($row = mysql_fetch_array($result))
 { 	 	 	 	 	 	 	
 ?>
<option value="<?php echo  $row['price']."+".$row['id']; ?>"><?php echo  $row['name'] ?></option>
<?php
}
?>
</select><br/>
 
<!--<div style="display: none" > -->
<strong>Coating Options</strong>
<br/>
<?php
$sql="SELECT description FROM tbl_products WHERE item = '".$q."' and feature = 'Coating Options'";
$result = mysql_query($sql);
 
 ?>
 
<select  name="coating">
<?php
while($row = mysql_fetch_array($result))
{
?>
 
<option value="<?php echo  $row['description']; ?>"><?php echo  $row['description']; ?></option>
<?php
}
?>
</select>
<!--</div> -->
<br/>
 
 
<strong>Quantity</strong>
<br/>
 <select name="qty">
<option value="100">100</option>
<option value="250">250</option>
<option value="500">500</option>
<option value="1000">1000</option>
<option value="2500">2500</option>
<option value="5000">5000</option>
<option value="10000">10,000</option>
<option value="15000">15,000</option>
<option value="20000">20,000</option>
<option value="25000">25,000</option>
</select>
 
<?php
$sql="SELECT description FROM tbl_products WHERE item = '".$q."' and feature = 'Color'";
$result = mysql_query($sql);
 
 ?>
 <br/> 	
<strong>Color</strong>
<br/>
<select  name="Color">
<?php
while($row = mysql_fetch_array($result))
{
?>
 
<option value="<?php echo  $row['description']; ?>"><?php echo  $row['description']; ?></option>
<?php
}
?>
</select>
<br/>
 
<?php
$sql="SELECT description FROM tbl_products WHERE item = '".$q."' and feature = 'Card Stock'";
$result = mysql_query($sql);
 
 ?>
<strong>Card Stock </strong>
<br/>
<select  name="cardStock">
 <?php
while($row = mysql_fetch_array($result))
{
?>
<option value="<?php echo  $row['description']; ?>"><?php echo  $row['description']; ?></option>
<?php
}
?>
</select>
<br/>
 <?php
$sql="SELECT description FROM tbl_products WHERE item = '".$q."' and feature = 'Corner Option'";
$result = mysql_query($sql);
 
 ?>
<strong>Corner Option</strong>
<br/>
 
<select  name="cornerOption">
 <?php
while($row = mysql_fetch_array($result))
{
?>
<option value="<?php echo  $row['description']; ?>"><?php echo  $row['description']; ?></option>
<?php
}
?>
</select>
<br/>
 
 
<?php
$sql="SELECT * FROM tbl_products WHERE item = '".$q."'";
$result = mysql_query($sql);
$row = mysql_fetch_array($result);
 ?>
<strong>Proof</strong>
<br/>
<select  name="proof">
<option value="Select proof">Select Proof</option>
<option value="FREE PDF Proof">FREE PDF Proof</option>
</select>
<br/>
 
 
<strong>Shipping</strong>
<br/>
<select  name="shipping">
<option value="Select shipping">Select Shipping</option>
<option value="FREE UPS Ground">FREE UPS Ground</option>
<option value="Next Day Air">Next Day Air</option>
</select>
<br/>
 
<?php
mysql_close($con); 
?>

Open in new window

screenshot.JPG
0
Comment
Question by:logicslab
1 Comment
 
LVL 1

Accepted Solution

by:
PHPeZ earned 500 total points
ID: 24170687
Hi,
I've posted an answer to a similar case like yours about a week earlier.

Please see the link below, may be it might help you?
http://www.experts-exchange.com/Programming/Languages/Scripting/AJAX/Q_24305067.html

Cheers!
0

Featured Post

Free Tool: Subnet Calculator

The subnet calculator helps you design networks by taking an IP address and network mask and returning information such as network, broadcast address, and host range.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Refresh SharePoint List using AJAX 10 673
How to send image and data using ajax 6 95
javascript question 6 56
Pass through dll 2 91
ASP.NET AJAX callbacks to web service are becoming very popular and unavoidable these days. The feel that the user gets when only a part of the page is updated without even hindering the UI is the advantage that the callbacks offer. The wait for the…
jQuery is a JavaScript library that greatly simplifies JavaScript programming. AJAX is an acronym formed from "Asynchronous JavaScript and XML."  AJAX refers to any communication between client and server, when the human client does not observe a…
Two types of users will appreciate AOMEI Backupper Pro: 1 - Those with PCIe drives (and haven't found cloning software that works on them). 2 - Those who want a fast clone of their boot drive (no re-boots needed) and it can clone your drive wh…
Nobody understands Phishing better than an anti-spam company. That’s why we are providing Phishing Awareness Training to our customers. According to a report by Verizon, only 3% of targeted users report malicious emails to management. With compan…

790 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question