Solved

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

Posted on 2009-04-09
1
626 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
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
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

Secure Your Active Directory - April 20, 2017

Active Directory plays a critical role in your company’s IT infrastructure and keeping it secure in today’s hacker-infested world is a must.
Microsoft published 300+ pages of guidance, but who has the time, money, and resources to implement? Register now to find an easier way.

Question has a verified solution.

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

Hello World !, Thanks : My Sincere thanks to @Michael Male who encouraged me to write an article on this in my  blog (http://scribblejava.wordpress.com). Introduction:       There are several technical issues a developer may face in his…
Today I am discussing AJAX problems in IE7 and I bet this will helps many guys out here who have problems with AJAX work. Lets start with the discovery of problem and then we will talk about its different solutions. My last two projects included …
The Email Laundry PDF encryption service allows companies to send confidential encrypted  emails to anybody. The PDF document can also contain attachments that are embedded in the encrypted PDF. The password is randomly generated by The Email Laundr…
Are you ready to implement Active Directory best practices without reading 300+ pages? You're in luck. In this webinar hosted by Skyport Systems, you gain insight into Microsoft's latest comprehensive guide, with tips on the best and easiest way…

726 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