我正在尝试在模板html表单中使用php函数,该表单被指定为php变量。我知道我可以使用标准的$变量,它们会显示ok,但我不知道如何使用函数。
基本上,我有一个数据库,其中包含一组值,我想用它来填充下拉选择表单。我需要在几个地方显示表单,因此使用变量模板化表单是有意义的。
到目前为止,我有以下PHP。感谢任何帮助!数组运行正常 - 但是在我正在努力的形式中显示它。
$query = "SELECT property.propertyid, property.reference, property.userid, users.userid, users.username FROM property LEFT JOIN users ON property.userid = users.userid WHERE property.userid = ".$varuserid." "; $result = mysql_query($query) or die(mysql_error()); $listarr=array(); while($qy = mysql_fetch_array($result)){ $listarr[] = "<option value=\"".$qy['propertyid']."\">".$qy['reference']."</option>"; } $form = <<<HTML <form name="insert" method="post" action="?page=account&a=insert&form=1"> <table width="100%" border="0" cellpadding="4" cellspacing="0"> <tr> <td width="24%" align="left" valign="top">Property ID</td> <td width="76%"> <select name="propertyid" size="1"> foreach($listarr as $key => $value) { echo $value } </select> </td> </tr> <tr> <td align="left" valign="top"> </td> <td> <input name="userid" type="hidden" id="userid" value=$varuserid /> <input type="submit" name="submit" value="Insert transaction!" /></td> </tr> </table> </form> HTML;
谢谢,
西麦enter code here
答案 0 :(得分:0)
这是我倾向于做的事情:
<select name="propertyid" size="1">
<?php foreach($listarr as $key => $value) { ?>
<option value="<?php echo $value; ?>"><?php echo $value; ?></option>
<?php } ?>
</select>
这样你仍然可以在页面上看到格式:)
答案 1 :(得分:0)
您不能在heredoc内使用循环,但可以使用变量。
正如您已有的列表,您可以做的是:
while($qy = mysql_fetch_array($result)){
$listarr[] = "<option value=\"".$qy['propertyid']."\">".$qy['reference']."</option>";
}
$list = implode(" ", $listarr);
在你的heredoc中:
<select name="propertyid" size="1">
{$list}
</select>
编辑:请注意,您需要为heredoc中包含的所有变量执行此操作,因此:
<input name="userid" type="hidden" id="userid" value={$varuserid} />
^ ^