【问题标题】:Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE解析错误:语法错误,意外的 T_ENCAPSED_AND_WHITESPACE
【发布时间】:2015-01-09 08:21:38
【问题描述】:
我可能有语法错误或其他问题,但我什么也没看到。
<select id="cd" name="cd">
<?php
while($row=mysql_fetch_array($cdresult)) {
echo "('<option value='$row['Poblacion']'></option >'.'<br />)";
}
mysql_close($link);
?>
</select>
在回显线上,我有错误:
[error] [client] PHP Parse 错误:语法错误,意外
T_ENCAPSED_AND_WHITESPACE,期望 T_STRING 或 T_VARIABLE 或
/var/www/slimtest/views/nuevo.php 第 89 行中的 T_NUM_STRING
也许你可以帮忙,因为我没有看到错误 D"=
【问题讨论】:
标签:
php
html
compiler-errors
syntax-error
whitespace
【解决方案1】:
在字符串中使用数组变量时,通常最好使用复杂的语法:
echo "('<option value='{$row['Poblacion']}'></option >'.'<br />)";
或者,您可以删除数组键中的引号:
echo "('<option value='$row[Poblacion]'></option >'.'<br />)";
PHP String Variable Parsing
【解决方案2】:
这应该可行:
<select id="cd" name="cd">
<?php
while($row=mysql_fetch_array($cdresult)) {
echo "<option value=".$row['Poblacion']."></option><br/>";
}
mysql_close($link);
?>
</select>
【解决方案3】:
尝试将回显线更改为:
echo '<option value="' . $row['Poblacion'] . '"></option >';
【解决方案4】:
这一行一团糟
echo "('<option value='$row['Poblacion']'></option >'.'<br />)";
首先,您不能在<option> 标记周围使用其他字符(<br> 标记在那里毫无意义)。然后将标签的文本留空。最后,您在整个内容周围使用双引号,让 PHP 尝试解释它。我敢打赌,你正在尝试这样做。
echo '<option value="' . $row['Poblacion'] . '">' . $row['Poblacion'] . '</option>';
这将生成一个适当的标签并用您的字段文本填充它(以便用户可以看到他们正在选择的内容)。按照你的方式,即使它是正确的 HTML,你也会有一个只有空白条目的下拉列表。