我对PHP很新,我遇到了问题。我有一个函数,它根据数据库中表的值的数量生成单选按钮。这些表中的唯一字段是值和属性。这个函数在另一个页面上调用,而我遇到的问题是我想要选择哪个按钮是粘性的。
function buildRadio($table)
{
if (!isset($_SESSION['create_profile'][$table]))
{
$sql = "SELECT * FROM $table";
$result = pg_query(db_connect(), $sql);
while ($row = pg_fetch_array($result))
{
echo '<input type="radio" name="'. "$table" .'" value="'.$row['value'].'" />'.$row['property'];
}
}
else
{
$temp = $_SESSION['create_profile'][$table];
echo "<input type='radio' name='$table' value='$temp' checked='checked'>";
}
}
else块中的内容是我尝试根据会话信息确定用户选择了哪个按钮,并使用该按钮粘贴重新加载页面。它现在所做的只是创建一个选中的按钮。我不完全确定我应该如何从这里开始实现这一目标,并且想知道是否有人能给我一些见解。
答案 0 :(得分:0)
假设您希望在页面更新/重新加载后按钮不会重置。我会在Javascript中使用localStorage。绝对不会为每个单击的按钮向服务器发送Ajax请求。
毕竟这是与客户端相关的,并且跟踪进度或记住临时选择的工作应该绝对限制在客户端。
如果客户想要重置其选择,但您已将其存储在$_SESSION
中,该怎么办?这将是一个痛苦的删除他们的cookie,必须再次登录而不是只是清除他们的本地存储。
编辑:您的回声线看起来很糟糕。它应该是:
echo '<input type="radio" name="', $table, '" value="', $row['value'], '" />', $row['property'];
可以使用点。我只是老学校(我猜)。
答案 1 :(得分:0)
在PHP中,您无法使用单引号转义数组变量,然后在数组中使用单引号