This is how I handled the dynamic question
I added 3 custom fields Paper, Background and laminate. These fields were added to the product detail page and shopping cart. The dynamic prompt value record set was joined based on changing values, similar to your case... see some of the code below where on the prompt value I am multiplying the chartlenth against the value, pulling in by productID..
see my website if this is what you were thinking, all my values are changing as the product length changes. This reduces the administration of changing values to dynamic instead of static. www.genealogywallcharts.com
hope this helps
<td class="paper"><select name="WA_Store_Cart_Paper_<?php echo $WA_Store_Cart->DisplayIndex; ?>" >
<?php
do {
?>
<option value="<?php echo $row_rsPaper['chartpapervalue'] * $row_rsPaper['chartlenth']?>"<?php if (!(strcmp($row_rsPaper['chartpapervalue'] * $row_rsPaper['chartlenth'], $WA_Store_Cart->DisplayInfo("Paper")))) {echo "selected=\"selected\"";} ?>><?php echo $row_rsPaper['chartpapername']?>
<?php if ($row_rsPaper['chartpapervalue'] != 0) { echo "$". $row_rsPaper['chartpapervalue'] * $row_rsPaper['chartlenth']; }
?> </option>
<?php
} while ($row_rsPaper = mysql_fetch_assoc($rsPaper));
$rows = mysql_num_rows($rsPaper);
if($rows > 0) {
mysql_data_seek($rsPaper, 0);
$row_rsPaper = mysql_fetch_assoc($rsPaper);
}
?>
</select></td>