Forum Webscript.Ru

Программирование => PHP => Тема начата: Ленивый гость от 26 Сентября 2002, 13:22:28

Название: "Непростая таблица"
Отправлено: Ленивый гость от 26 Сентября 2002, 13:22:28
у меня есть скрипт (динамически) создающий ХТМЛ таблицу из MYSQL таблицы.
Вот он:

$db_name = "test";
$table_name = "company";

$connection = @mysql_connect("localhost", "admin", "gramozeka")
                           or die(\'Не могу подключиться к серверу баз данных\');
             @mysql_select_db($db_name, $connection)
                       or die(\'Не могу открыть базу данных\');

$sql = "select id, title, diz, adress from $table_name";
 
  $result = mysql_query($sql,$connection)
  or die("Couldn\'t execute query.");
 
@$num_rows = mysql_num_rows($reult);
while ($a_row = mysql_fetch_row ($result))
      {
      print "\\n";
      foreach ($a_row as $field)
         print "\\t$field\\n";
      print "\\n";
      }
         ?>
         

                  
            
               
               
               
               
            
            
   
   
   
   


   
   
   
   


         
НазваниеЦенаАдрес,телефон
1росмаркет0.00000
2росмаркет0.00000


В результате получается таблица с черным фоном.
Мне нужно, чтобы черный фон всталялся через один стобец (чередовался с други цветом).

То есть должно получиться вот так:

...............

   3
   
   
   0

...............

Как бы это реализовать???
Название: "Непростая таблица"
Отправлено: ThE0ReTiC от 26 Сентября 2002, 13:45:42
проверкой номера очередной обрабатываемой записи на четность, например...
Название: "Непростая таблица"
Отправлено: Alexandr от 26 Сентября 2002, 14:03:54
@$i++;
if (($i%2)!==0) $bg=" bgcolor=\\"#E6E6E6\\""; else $bg=" bgcolor=\\"#F3F3F3\\"";
Название: "Непростая таблица"
Отправлено: ThE0ReTiC от 26 Сентября 2002, 14:19:05
Alexandr
if ($i%2)
Название: "Непростая таблица"
Отправлено: PilotV от 26 Сентября 2002, 14:57:32
$bgclr=($i=1-$i) ? "#E6E6E6" : "#F3F3F3";

И далее по тексту...
Название: "Непростая таблица"
Отправлено: Меняздесьдавнонет от 26 Сентября 2002, 15:05:13
ThE0ReTiC
if (++$i%2)

:-)))

PilotV
В общем, не универсально. Но красиво.
Название: "Непростая таблица"
Отправлено: Ленивый гость от 26 Сентября 2002, 15:20:45
спасибо всем!!!!!!
Название: "Непростая таблица"
Отправлено: Доктор от 26 Сентября 2002, 15:26:20
Ленивый гость
И ваще общие вещи для всех столбцов типа
align=center background=black
надо выносить в
А если чередование, то тоже один цвет в , а второй в каждой второй ячейке.
Название: "Непростая таблица"
Отправлено: PilotV от 26 Сентября 2002, 16:28:09
А вообще еще лучше так (нет предела совершенству):
$bgclr=($i=!$i) ? "#E6E6E6" : "#F3F3F3";

Кончтрукцией типа $i=1-$i я обычно для индексации массива пользуюсь. Кстати, можно было бы еще и так - с массивом (например, чтобы цвета один раз перед телом цикла иниц-ть):

$bgclrs=array("#E6E6E6","#F3F3F3");

for ($i=0; .... ; $i=1-$i) {
...
echo "... bgcolor=\'$bgclrs[$i]\' ...";
...
}
Название: "Непростая таблица"
Отправлено: AlieN от 27 Сентября 2002, 13:55:19
Цитировать
нет предела совершенству

нет предела развращенному мозгу программиста ;)
Название: "Непростая таблица"
Отправлено: Metaller от 27 Сентября 2002, 17:21:47
А можно еще через XOR..... :)
Название: "Непростая таблица"
Отправлено: Rodent от 03 Февраля 2007, 01:27:56
А как сделать так, чтобы чередовались три цвета?
Или напрмер, 3 картинки в таблице в ряд, а следующие уже со следующей строчки?

if ($i%3) - не проходит :-((
Название: "Непростая таблица"
Отправлено: andymc от 03 Февраля 2007, 19:19:29
Rodent
if ($i%3 == 0){

} else if ($i%3 == 1){

} else {

}