Моя фоновая картинка не загружается, если у меня есть заявление выбора на странице - PullRequest
0 голосов
/ 23 ноября 2018

Я использую переменную $ _SESSION $ _SESSION ['EasyMode'], чтобы решить, должен ли фон быть сплошным цветом или изображение, похожее на поле травы.Когда пользователь входит в систему, $ _SESSION ['EasyMode'] имеет значение true или false, в зависимости от предпочтений пользователя.По какой-то причине я должен сказать программе сначала загрузить изображение поля, а затем, если EasyMode установлен в значение true, загрузить SolidBackground.Если я сначала не загружаю изображение поля, я просто получаю белый фон.

Во-вторых, если я использую оператор выбора для ввода данных пользователем, он всегда показывает фоновое изображение полянезависимо от того, является ли EasyMode истинным или ложным.На всех других моих веб-страницах он отображается правильно, если нет операторов выбора и только HTML или другие входные данные.Вы можете зайти на сайт и зарегистрироваться и убедиться в этом сами.Когда вы регистрируете последний вариант, вы можете установить Easy Visual Mode на Yes или No, а затем вы всегда можете вернуться и изменить его, выбрав Обновить свою учетную запись.

Вот мой код:

    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>

1 Ответ

0 голосов
/ 24 ноября 2018

Правильный код выглядит следующим образом:

    <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>
...