php选择选项名称和值

php选择选项名称和值,php,mysql,select,options,Php,Mysql,Select,Options,这是我的代码 $sql="SELECT code,rate, name FROM price_detail WHERE ref_no='VACC'"; echo "<select onchange='vaccines(this)' name='student' value='0'><option> Select Vaccines Type</option>"; foreach ($dbh->query($sql) as $row){

这是我的代码

$sql="SELECT code,rate, name FROM price_detail WHERE ref_no='VACC'"; 

echo "<select   onchange='vaccines(this)' name='student' value='0'><option> Select Vaccines Type</option>";

foreach ($dbh->query($sql) as $row){
            echo "<option value=$row[rate]>$row[name]</option>"; 
                    }
echo "</select>";
$sql=“从价格详情中选择代码、费率、名称,其中参考号为VACC”;
echo“选择疫苗类型”;
foreach($dbh->query($sql)作为$row){
回显“$行[名称]”;
}
回声“;
这里我需要$row['name'] 对于$row['rate'],我采用选项的值

如何检索['name']

您不能将表符号直接用于字符串。
可以像这样使用串联:

echo '<option value="'.$row['rate'].'">'.$row['name'].'</option>'; 
不要忘记html
value
参数的引号,以及表索引的引号


注意:如果表索引不使用引号,它将尝试匹配一个常量,如果没有找到常量,它将回退,假定它是字符串

看起来不太安全,安全吗?您能解释一下原因吗?据我所知,注射是不安全的。我正在使用value$row['rate']来插入到表中。我怎么能使用不说明任何安全性的$row['name']。我们没有处理帖子的代码。表单是否安全;服务器端代码可能存在安全漏洞。
echo "<option value='{$row['rate']}'>{$row['name']}</option>";