Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: чередование фона

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: не могу понять как сделать чередование фона при выводе инфы...
Сержо
Отправлено: 22 Февраля, 2009 - 00:10:16
Post Id


Гость


Покинул форум
Сообщений всего: 64
Дата рег-ции: Апр. 2008  


Помог: 0 раз(а)

[+]


Столкнулся с проблемкой...а именно не могу понять как сделать чередование фона при выводе инфы.
Вывожу инфу циклом (1 строка , 5 столбцов),теоретически понимаю что можно разбить на чет и нечет , но как на практике ...увы...
прошу вашей помощи. Если можно в примере.
Заранее благодарен за помощь!
 
 Top
InFAnT
Отправлено: 22 Февраля, 2009 - 00:26:50
Post Id


Новичок


Покинул форум
Сообщений всего: 14
Дата рег-ции: Февр. 2009  


Помог: 0 раз(а)




С помощью цикла for!
CODE (text):
скопировать код в буфер обмена
  1.  
  2. for ($i=0;$i<$n;$i++)
  3. {
  4. if (($i % 2)>0)
  5. echo '<tr bgcolor = yellow
  6. align=center>';
  7. else echo '<tr bgcolor = blue
  8. align=center>';
  9. }
  10.  


Где-то так...

(Отредактировано автором: 22 Февраля, 2009 - 00:32:57)

 
 Top
Бублик
Отправлено: 22 Февраля, 2009 - 04:04:13
Post Id


Частый гость


Покинул форум
Сообщений всего: 130
Дата рег-ции: Янв. 2009  


Помог: 0 раз(а)

[+]


PHP:
скопировать код в буфер обмена
  1. for ($i=0;$i<$n;$i++)
  2. {
  3. if (($i % 2)==0)
  4. echo '<tr bgcolor = yellow
  5. align=center>';
  6. else echo '<tr bgcolor = blue
  7. align=center>';
  8. }


Может так?

(Отредактировано автором: 22 Февраля, 2009 - 04:06:43)

 
 Top
InFAnT
Отправлено: 22 Февраля, 2009 - 09:36:13
Post Id


Новичок


Покинул форум
Сообщений всего: 14
Дата рег-ции: Февр. 2009  


Помог: 0 раз(а)




Походу так и так можно!Улыбка
Хотя...мне кажется правильным первый вариант, поэтому так и написал, но я еще новичок, так , что могу ошибаться!!!

(Отредактировано автором: 22 Февраля, 2009 - 09:38:11)

 
 Top
Ch_chov
Отправлено: 22 Февраля, 2009 - 09:40:37
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2121
Дата рег-ции: Июль 2008  
Откуда: из города


Помог: 90 раз(а)




PHP:
скопировать код в буфер обмена
  1. for($i=0; $i<$n; $i++) {
  2. $color=$i%2>0? 'yellow':'blue';
  3. echo'<tr><td bgcolor='.$color.' align=center>';
  4. }

(Добавление)
или так
PHP:
скопировать код в буфер обмена
  1. for($i=0; $i<$n; $i++)
  2. echo '<tr><td bgcolor=',$i%2>0? print'yellow':print'blue','align=center>';

(Отредактировано автором: 22 Февраля, 2009 - 09:49:05)

 
 Top
InFAnT
Отправлено: 22 Февраля, 2009 - 10:06:48
Post Id


Новичок


Покинул форум
Сообщений всего: 14
Дата рег-ции: Февр. 2009  


Помог: 0 раз(а)




А что означает знак вопроса после выражения $i%2>0? ????
 
 Top
Roler
Отправлено: 22 Февраля, 2009 - 10:11:39
Post Id



Посетитель


Покинул форум
Сообщений всего: 458
Дата рег-ции: Авг. 2008  
Откуда: Россия


Помог: 1 раз(а)




Это такая вариация if. Только для тех случаев, когда нужно вернуть значение. Синтаксис
CODE (text):
скопировать код в буфер обмена
  1. $var = ( условие ? 'true' : 'false')
 
 Top
InFAnT
Отправлено: 22 Февраля, 2009 - 11:00:14
Post Id


Новичок


Покинул форум
Сообщений всего: 14
Дата рег-ции: Февр. 2009  


Помог: 0 раз(а)




Понятно!Спасибо, мужики!Улыбка
 
 Top
NebsteR
Отправлено: 23 Февраля, 2009 - 15:44:18
Post Id


Гость


Покинул форум
Сообщений всего: 75
Дата рег-ции: Янв. 2009  


Помог: 0 раз(а)




у меня вот так сделано, отрезок кода:

CODE (text):
скопировать код в буфер обмена
  1.    for ($count=0; $count<$rows; $count++)
  2.    {
  3.        echo "<tr>";
  4.        echo "<td bgcolor='#",$r,"'><font face=Arial size=1>";
  5.        echo mysql_result($q, $count, 13);
  6.        echo "</font></td>";
  7.        echo "<td bgcolor='#",$r,"'><font face=Arial size=1>";
  8.        echo mysql_result($q, $count, 14);
  9.        echo "</font></td>";
  10.        echo "</tr>";
  11.        if ($r == 'E0E0E0') $r = 'D0D0D0'; else $r = 'E0E0E0';
  12.    }

(Добавление)
т.е. после каждой строки заменяем переменную с цветом на обратный...

(Отредактировано автором: 23 Февраля, 2009 - 15:45:45)

 
 Top
Dastar
Отправлено: 23 Февраля, 2009 - 15:58:36
Post Id



Частый гость


Покинул форум
Сообщений всего: 199
Дата рег-ции: Янв. 2008  
Откуда: Израиль


Помог: -6 раз(а)




PHP:
скопировать код в буфер обмена
  1. if ($r == 'E0E0E0') $r = 'D0D0D0'; else $r = 'E0E0E0';

Красиво)
Можно так же написать:
PHP:
скопировать код в буфер обмена
  1. $r = ($r=='E0E0E0') ? 'D0D0D0' : 'E0E0E0'


-----
Не знаешь - молчи.
 
 Top
InFAnT
Отправлено: 23 Февраля, 2009 - 16:00:54
Post Id


Новичок


Покинул форум
Сообщений всего: 14
Дата рег-ции: Февр. 2009  


Помог: 0 раз(а)




Как то все тут заумно!)))Для простого чередования фона столько много кода писать...)))
 
 Top
NebsteR
Отправлено: 23 Февраля, 2009 - 16:02:02
Post Id


Гость


Покинул форум
Сообщений всего: 75
Дата рег-ции: Янв. 2009  


Помог: 0 раз(а)




ненене, строчка замены цвета там всего одна) я вообще привел отрывок кода)
 
 Top
Бублик
Отправлено: 23 Февраля, 2009 - 16:34:28
Post Id


Частый гость


Покинул форум
Сообщений всего: 130
Дата рег-ции: Янв. 2009  


Помог: 0 раз(а)

[+]


PHP:
скопировать код в буфер обмена
  1. for ($count=0; $count<$rows; $count++)
  2. {
  3. echo "<tr>";
  4. echo "<td bgcolor='#",$r,"'><font face=Arial size=1>";
  5. echo mysql_result($q, $count, 13);
  6. echo "</font></td>";
  7. echo "<td bgcolor='#",$r,"'><font face=Arial size=1>";
  8. echo mysql_result($q, $count, 14);
  9. echo "</font></td>";
  10. echo "</tr>";
  11. if ($r == 'E0E0E0') $r = 'D0D0D0'; else $r = 'E0E0E0';
  12. }


Этот код можно упростить вот так

PHP:
скопировать код в буфер обмена
  1. for ($count=0; $count<$rows; $count++)
  2. {
  3. echo "<tr style='background-color:#",$r,"'>";
  4. echo "<td><font face=Arial size=1>";
  5. echo mysql_result($q, $count, 13);
  6. echo "</font></td>";
  7. echo "<td><font face=Arial size=1>";
  8. echo mysql_result($q, $count, 14);
  9. echo "</font></td>";
  10. echo "</tr>";
  11. $r = ($r=='E0E0E0') ? 'D0D0D0' : 'E0E0E0';
  12. }


:)
 
 Top
NebsteR
Отправлено: 23 Февраля, 2009 - 16:42:24
Post Id


Гость


Покинул форум
Сообщений всего: 75
Дата рег-ции: Янв. 2009  


Помог: 0 раз(а)




ну про замену цвета, со стандартным if как-то привычней что-ли) а вот про стиль для строки интересно))
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB