需要一些帮助才能将PHP添加到HTML中。我试图在PHP中嵌入PHP代码片段,但是输出在文本框中显示片段而不是评估它。
在HTML(register.php)中,添加了以下代码行
<tr>
<td>
<?php utils::addControl('Name','label'); ?>
</td>
<td>
<?php utils::addControl('username','text'); ?>
</td>
</tr>
这是utils :: addControl()
的来源 public function addControl($ctlName, $type) {
switch ($type) {
case 'text':
echo <<<EOT
<input type='text' name='$ctlName' value='<?php echo htmlspecialchars($ctlName); ?>'>
EOT;
break;
case 'label':
echo "<label for id='lbl$ctlName'>$ctlName</label>";
break;
}
输出在文本框中显示<?php echo htmlspecialchars(username); ?>
。
应该做些什么才能正确评估PHP代码段。 TIA。
答案 0 :(得分:3)
服务器通常仅配置为在查找PHP时对脚本进行单次传递...
Source → PHP → Output
不是双通:
Source → PHP → PHP → Output
如果它确实执行了双次传递,那么如果你想在输出中包含序列<?php
(如果打开短标签,甚至是<?
),你就必须跳过箍。 / p>
编写PHP,使其首先生成您想要的输出,不要尝试从PHP生成PHP。
$htmlCtrlName = htmlspecialchars($ctlName);
echo "<input type='text' name='$htmlCtlName' value='$htmlCtrlName'>"