Php 基于数据库记录/调用的动态变量-帮助?
好的,我会尽量简短的 我正在尝试为我的用户创建一个真正可扩展的环境,从而允许他们..Php 基于数据库记录/调用的动态变量-帮助?,php,dynamic,variables,Php,Dynamic,Variables,好的,我会尽量简短的 我正在尝试为我的用户创建一个真正可扩展的环境,从而允许他们.. 1.定义一个新选项(dshop\u options\u name) 2.定义选项值(dshop\u选项\u值) 数据库中的独立表 这是为了允许分配不同的值,也允许以任何组合进行分配。 好的,脚本分为两部分。表单页面和结果页面 form.php(使用POST) 首先,我需要根据分配给产品的选项动态创建下拉列表,然后运行dshop_options_values表以获取分配给该选项的任何值 /////////////
1.定义一个新选项(dshop\u options\u name)
2.定义选项值(dshop\u选项\u值)
数据库中的独立表 这是为了允许分配不同的值,也允许以任何组合进行分配。
好的,脚本分为两部分。表单页面和结果页面 form.php(使用POST) 首先,我需要根据分配给产品的选项动态创建下拉列表,然后运行dshop_options_values表以获取分配给该选项的任何值 //////////////////////////////////////////////////////////////////////////////////////////
$prod_prop_name=mysql_query("SELECT * FROM `dshop_options_name`");
$prod_prop_name_array= array();
while($data9=mysql_fetch_array($prod_prop_name)) {
$prod_prop_name_array[]=$data9;
}
foreach($prod_prop_name_array as $rowNum => $data9) {
$prod_prop_id=$data9[0];
$prod_prop_title=$data9[1];
$prod_prop_attri=mysql_query("SELECT * FROM `dshop_options_values` WHERE `prod_id`='".$selected_product."' AND `attri_name`='".$prod_prop_title."' ORDER BY `attri_value` ASC ");
$prod_prop_attri_array= array();
while($data10=mysql_fetch_array($prod_prop_attri)) {
$prod_prop_attri_array[]=$data10;
}
if(!$prod_prop_attri_array){}
else{
echo"<div class='left'>";
echo"$prod_prop_title\n";?>
<select name='<? echo $prod_prop_title?>'>
<option value="select">Select</option>
<?php
foreach($prod_prop_attri_array as $rowNum => $data10){
$itemname=$data10[2];
$itemvalue=$data10[3];
$itemprice=$data10[4];
if($itemprice<="0"){
echo"<option value='".$itemvalue."'>".$itemvalue."</option>\n";
}
else{
echo"<option value='".$itemvalue."'>".$itemvalue." - ".$currency_type.$itemprice."</option>\n";
}
}
echo"</select></br></br></div>";
}
$prod_prop_name=mysql_query("SELECT * FROM `dshop_options_name`");
$prod_prop_name_array= array();
while($data9=mysql_fetch_array($prod_prop_name)) {
$prod_prop_name_array[]=$data9;
}
foreach($prod_prop_name_array as $rowNum => $data9){
$option_id=$data9[0];
$option_name=$data9[1];
$varnval=$_REQUEST[$option_name];
echo"$varnval"; // did we get a result?
$results = array();
if(!$varnval | $varnval=="select"){}
else{
$results[] = $option_name."-".$varnval;
$optpricesum_query=mysql_query("SELECT * FROM `dshop_options_values` WHERE `attri_name`='".$option_name."' AND `attri_value`='".$varnval."'");
$optpricesum_result=mysql_fetch_array($optpricesum_query);
$optpricesum=$optpricesum_result[4];
}
if(!$varnval | $varnval=="select"){}
else{
for ($i=0;$i<=0;$i++){$options.=$results[$i]." | ";}
}
}
$prod\u prop\u name=mysql\u查询(“从'dshop\u options\u name`中选择*”;
$prod_prop_name_array=array();
而($data9=mysql\u fetch\u数组($prod\u prop\u name)){
$prod_prop_name_数组[]=$data9;
}
foreach($rowNum=>$data9的prod\u prop\u name\u数组){
$prod_prop_id=$data9[0];
$prod_prop_title=$data9[1];
$prod_prop_attri=mysql_查询(“从'dshop_选项_值'中选择*,其中'prod_id`='”。$selected_product.”和'attri_name`='”。$prod_prop_title.”按'attri_值'ASC'排序);
$prod_prop_attri_array=array();
而($data10=mysql\u fetch\u数组($prod\u prop\u attri)){
$prod_prop_attri_array[]=$data10;
}
if(!$prod\u prop\u attri\u数组){
否则{
回声“;
回显“$prod\U prop\U title\n”?>
您应该首先检查“register\u globals”是否处于启用状态,以便让$\u REQUEST工作;我不希望使用该超全局变量,而是使用$\u GET或$\u POST(取决于表单设置)
对于您的选项,最好将它们存储为数组:
<select name="myoption[]">
<option name="1" value="1">One</option>
<option name="2" value="2">Two</option>
</select>
希望有帮助
print_r($myoption);