PHP.SU

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

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

> Найдено сообщений: 2
bicerinka Отправлено: 20 Сентября, 2015 - 08:59:43 • Тема: Объединение ячеек HTML таблицы c одинаковым текстом и стилями • Форум: HTML, Дизайн & CSS

Ответов: 2
Просмотров: 2974
Спасибо!
bicerinka Отправлено: 13 Октября, 2011 - 17:44:33 • Тема: Объединение ячеек HTML таблицы c одинаковым текстом и стилями • Форум: HTML, Дизайн & CSS

Ответов: 2
Просмотров: 2974
Здравствуйте!

Написала код для генерации таблицы.
Стили и содержимое ячеек изменяются в зависимости от данных содержащихся в двумерном массиве $styles.
Ячейки нумеруются последовательно с помощью переменной $number.

Как можно сделать так, чтобы ячейки с одинаковыми параметрами объединялись?
Например, "Текст красного цвета" было написано посредине объединенных 4х ячеек.

PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. function tab_gen($r,$c,$w,$h,$bgc,$bord)
  3. {
  4. $styles = array(
  5.     array( 'text'    => 'Текст красного цвета'
  6.          , 'cells'   => array(1,2,4,5)
  7.          , 'align'   => 'center'
  8.          , 'valign'  => 'center'
  9.          , 'color'   => 'FF0000'
  10.          , 'bgcolor' => '0000FF')
  11.   , array( 'text'    => 'Текст зеленого цвета'
  12.          , 'cells'   => array(8,9)
  13.          , 'align'   => 'right'
  14.          , 'valign'  => 'bottom'
  15.          , 'color'   => '00FF00'
  16.          , 'bgcolor' => 'FFFFFF')
  17.                 );
  18.                      
  19.    $number = 0;
  20.    echo ('<table width="'.$w.'" height="'.$h.'" bgcolor="'.$bgc.'" border="'.$bord.'" rules="all">');
  21.         for ($i=1; $i <= $r;$i++)
  22.                         {
  23.                                 echo ('<tr>');
  24.                                
  25.                                 for ($a=1; $a <= $c; $a++)
  26.                                 {
  27.                                         $number++;
  28.                                        
  29.                                         $tx='';
  30.                                         if (in_array($number, $styles[0]['cells']))
  31.                                         {
  32.                                           $tx=$styles[0]['text'];
  33.                                           $al=$styles[0]['align'];
  34.                                           $val=$styles[0]['valign'];
  35.                                           $col=$styles[0]['color'];
  36.                                           $bg=$styles[0]['bgcolor'];
  37.                                         }
  38.                                           else if (in_array($number, $styles[1]['cells'])){
  39.                                           $tx=$styles[1]['text'];
  40.                                           $al=$styles[1]['align'];
  41.                                           $val=$styles[1]['valign'];
  42.                                           $col=$styles[1]['color'];
  43.                                           $bg=$styles[1]['bgcolor'];
  44.                                         }
  45.                                         else {$bg=$bgc;}
  46.                                         $td = '<td align="'.$al.'" valign="'.$val.'" bgcolor="'.$bg.'" style="color:'.$col.';">'.$tx.'</td>';
  47.                                         echo($td);
  48.                                 }
  49.                                 echo ('</tr>');
  50.                         }
  51.  echo ('</table>');
  52. }
  53. tab_gen(3,3,300,300,'ffffff',2);
  54. ?>


Спасибо

Страниц (1): [1]
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB