【问题标题】: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 />)"; 
          

          首先,您不能在&lt;option&gt; 标记周围使用其他字符(&lt;br&gt; 标记在那里毫无意义)。然后将标签的文本留空。最后,您在整个内容周围使用双引号,让 PHP 尝试解释它。我敢打赌,你正在尝试这样做。

          echo '<option value="' . $row['Poblacion'] . '">' . $row['Poblacion'] . '</option>';
          

          这将生成一个适当的标签并用您的字段文本填充它(以便用户可以看到他们正在选择的内容)。按照你的方式,即使它是正确的 HTML,你也会有一个只有空白条目的下拉列表。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 2011-11-07
            • 1970-01-01
            • 2013-10-11
            • 2023-03-18
            • 2017-10-21
            • 2017-06-20
            相关资源
            最近更新 更多