我有一些代码可以工作并使用表单更改样式表。只要您保持浏览器窗口打开,它就可以工作。您可以返回另一个站点,样式将是您选择的样式,这很好,但是如果您关闭浏览器并返回,它将被设置为默认值。这是因为我每次都开始一个新会话,还是因为我没有设置 cookie 的有效期?那是问题一。
问题 2 是我有当前可用的下拉菜单并选择正确的样式表,但我也有一些用于文本大小的单选按钮。我希望将它们合并,但它们将使用不同的样式表工作,这些样式表只包含文本大小,因此默认文本大小是标准的,用户可以与样式表一起更改它们,但它们可以独立工作。任何人都可以建议一些编码谢谢。
以下是我目前正在使用的内容。干杯
php设置样式:
if (isset($_COOKIE["selectedStyle"])) // has the cookie already been set
{
$style=$_COOKIE["selectedStyle"];
}else{
$style = spring;
}
if (isset($_POST["changeStyle"])) // changing the style
{
$style=$_POST["changeStyle"];
}
setcookie("selectedStyle",$style); // update or create the cookie
?>
带有适用于文本转换器的下拉菜单和单选按钮的表单:
<div id="headerInfo">
<p><strong>User Controls</strong></p>
<form method="post" action="<?= $_SERVER["PHP_SELF"];?>">
Select Page Style:<br/>
<select name="changeStyle">
<option value="spring">Spring (Green)</option>
<option value="summer">Summer (Yellow)</option>
<option value="winter">Winter (Blue)</option>
<option value="autumn">Autumn (Orange)</option>
</select>
<input type="submit" name="submitstyle" value="Set Style">
</form>
<form method="post" action="<?= $_SERVER["PHP_SELF"];?>">
Select Font Size:<br/>
<span class="smallText">A</span><input type="radio" name="changeFontSize" value="small"/>
<span class="standardText">A</span><input type="radio" name="changeFontSize" value="standard"/>
<span class="largeText">A</span><input type="radio" name="changeFontSize" value="large"/>
<span class="xLargeText">A</span><input type="radio" name="changeFontSize" value="extraLarge"/>
</select>
<input type="submit" name="submitfont" value="Set Size">
</div>