我遇到了一个问题,我不知道应该怎么做。
我想让我的网站用户能够从5件事中挑选出来,比如说;
汽车,火车,飞机,雪地车,全地形车。
根据他们的选择,它将重定向到URL中带有变量?choice = cars的页面(这部分我知道该怎么做。)例如configure_choice.php?choice = cars
然后,在访问此页面时,我想生成8个下拉框,每个下拉框都有不同的HTML标识符。请注意,这些下拉框VARY取决于选择。
所以,如果他们选择了汽车,我会想要:
<select name="car1" class="dropdown">
<option>Chevrolet</option>
<option>GM</option>
<option>Cadillac</option>
</select>
<select name="car2" class="dropdown">
<option>Chevrolet</option>
<option>GM</option>
<option>Cadillac</option>
</select>
<select name="car3" class="dropdown">
<option>Chevrolet</option>
<option>GM</option>
<option>Cadillac</option>
</select>
......等等,一直到8。
我想过分配像
这样的东西for($j = 1, $j <= 8, ++$j)
{
$car_dropdown_$j = "<select name=""car" . "$j"" class="dropdown">
<option>Chevrolet</option>
<option>GM</option>
<option>Cadillac</option>
</select>";
echo $car_dropdown_$j;
}
但是当我尝试运行此循环时,我收到以下错误:
解析错误:语法错误,意外')',期待';'在第5行的C:\ web \ encodetest.php
而且我也不知道你是否可以在HTML标签中放置一个变量并使其正常工作。
基本上我正在尝试设置8个变量,我可以将它放在我的HTML中,并且下拉框是唯一的,因此当发送到MySQL时,可以识别它们。这里有什么帮助吗?
非常感谢!
答案 0 :(得分:1)
for($j = 1; $j <= 8; $j++) //goodeye adam catching the ;
{
$car_dropdown[$j] = "<select name='car" . $j . "' class=\"dropdown\">
<option>Chevrolet</option>
<option>GM</option>
<option>Cadillac</option>
</select>";
echo $car_dropdown[$j];
}
答案 1 :(得分:0)
正确的语法是:for($j = 1; $j <= 8; ++$j)
。语句以;
分隔。
要将变量插入字符串,您可以执行
echo "<select name=\"car" . $j . "\" class=\"dropdown\">";
或
echo "<select name=\"car$j\" class=\"dropdown\">";
请注意,字符串中的引号应使用\
进行转义,否则它们将被视为字符串的结尾。
答案 2 :(得分:0)
有一些语法错误,其他答案也不起作用......
首先,您需要在for循环中使用; 。 对于动态变量,您需要使用 [$ j] 。
要将字符串粘在一起,您必须使用“。$ j。”
for($j = 1; $j <= 8; $j++){
$car_dropdown[$j] = '<select name="car' . $j . '" class="dropdown">
<option>Chevrolet</option>
<option>GM</option>
<option>Cadillac</option>
</select>';
echo $car_dropdown[$j];
}