我使用$_SESSION变量$_SESSION[EasyMode']来决定背景应该是纯色还是看起来像草地的图片。当用户登录$_SESSION时,根据用户的偏好,[EasyMode']设置为true或false。出于某种原因,我必须告诉程序首先加载字段的图片,然后如果EasyMode设置为true,则加载SolidBackground。如果我不先加载字段的图片,我只会得到一个白色背景。
其次,如果我使用select语句让用户输入数据,它总是显示字段的背景图片,无论EasyMode是true还是false。在我的所有其他网页上,如果没有选择语句,只有HTML或其他输入,它就会正确显示。你可以去网站注册,自己看看。注册时,最后一个选项允许您将"简易视觉模式"设置为"是"或"否",然后您可以随时返回并通过选择"更新您的帐户"进行更改。
这是我的代码:
body {
background-image: url(assets/BlankField.jpg);
<?php
if ($_SESSION['EasyMode']) { ?>
background-image: url(assets/SolidBackground.png);
<?php
} ?>
}
<div id="ContentRight">
<form id="SelectUser" name="SelectUser" method="post" action="">
<table width="400" border="0" align="center">
<td><h6><span id="sprytextfield2">
<label for="Username"></label>
User Name
<br />
<?php
$sql = "SELECT * FROM users ORDER BY Username ASC ";
$result = mysql_query($sql);
// Make the first option blank
?>
<select name="Username" type="text" class="StyleTxtField">
<option></option>
<?php
while ($row = mysql_fetch_array($result)) {
?>
<option><?php echo $row['Username']; ?></option>
<?php
}
?>
<tr><br />
<td><input type="submit" name="Finduser" id="Finduser" value="Text Person" class="StyleTxtField"/></td>
</tr>
<tr>
</table></select>
</form>
</div>
正确的代码如下:
<style type="text/css">
<?php
include_once('includes/nfl6pack.inc.php');
session_start();
if ($_SESSION['EasyMode']) {
$attribute = 'assets/SolidBackground.png';
} else {
$attribute = 'assets/BlankField.jpg';
}
?>
body {
background-image: url(<?php echo $attribute; ?>);
}
</style>