Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Выборка из базы
 
 автор: technic611   (06.01.2006 в 03:52)   письмо автору
 
 

Хочу сделать, чтобы при выборки данных из базы MySql в таблицу циклом while строчки таблицы шли "зеброй". Один цвет строчки допустим синий, другой белый. Такое возможно.

   
 
 автор: 10100100   (06.01.2006 в 06:10)   письмо автору
 
   для: technic611   (06.01.2006 в 03:52)
 

возможно, перед выводом определённой строки введите вот это

echo '<font color=red>';
echo 'ну тут твой вывод';
echo '</font>';

и по аналогии с белым! :)

   
 
 автор: technic611   (06.01.2006 в 07:09)   письмо автору
 
   для: 10100100   (06.01.2006 в 06:10)
 

Так врядли получится. Вот код


// Выбераем   базу данных
$dbname = "baza";
mysql_select_db($dbname,$dbcnx); 

$query = "SELECT * FROM table  WHERE id_catalog=".$_GET['id_catalog']."  ORDER BY model ASC  LIMIT $begin, $pnumber";
  $prt = mysql_query($query);
  if(!$prt) puterror("Ошибка при запросе к таблице leg_avto");




if (mysql_num_rows($prt)>0)
  
{


echo "<tr><td height='26' width='150' align='center' bgcolor='#D5D5D5'><a class='answers'><b>Модель автомобиля</b></td>";
echo "<td height='26' width='50' align='center' bgcolor='#D5D5D5'><a class='answers'><b>г.в.</b></td>";
echo "<td height='26' width='55' align='center' bgcolor='#D5D5D5'><a class='answers'><b>объем (куб.см)</b></td>";
echo "<td height='26' width='80' align='center' bgcolor='#D5D5D5'><a class='answers'><b>Тип топлива</b></td>";
echo "<td height='26' width='75' align='center' bgcolor='#D5D5D5'><a class='answers'><b>КП</b></td>";
echo "<td height='26' width='70' align='center' bgcolor='#D5D5D5'><a class='answers'><b>пробег, тыс. км</b></td>";
echo "<td height='26' width='65' align='center' bgcolor='#D5D5D5'><a class='answers'><b>цвет</b></td>";
echo "<td height='26' width='50' align='center' bgcolor='#D5D5D5'><a class='answers'><b>цена</b></td>";
echo "<td height='26' width='70' align='center' bgcolor='#D5D5D5'><a class='answers'><b>телефон</b></td>";
echo "<td height='26' width='45' align='center' bgcolor='#D5D5D5'><a class='answers'><b>фото</b></td>";
echo "<td height='26' width='113' bgcolor='#D5D5D5'>&nbsp;</td></tr>";

while($par = mysql_fetch_array($prt))
    {
        switch ($par['engine'])
        {
          case 'disel':
            $dvig = "дизель";
            break;
          case 'benzin':
            $dvig = "бензин";
            break;              
        }
       
        switch ($par['trans'])
        {
          case 'avtomat':
            $transm = "АКП";
            break;
          case 'mehanica':
            $transm = "МКП";
            break;              
        }

switch ($par['privod'])
        {
          case 'pered':
            $privod = "пер.";
            break;
          case 'zad':
            $transm = "зад.";
 case 'poln':
            $transm = "4WD";
            break;              
        }
       
        echo "<tr><td height='23' width='150' align='center' bgcolor='#E5E5E5'><a class='text'>".$par['model']."</td>
              <td height='23' width='50' align='center' bgcolor='#E5E5E5'><a class='text'>".$par['year']."</td>
              <td height='23' width='55' align='center' bgcolor='#E5E5E5'><a class='text'>".$par['volume']."</td>
              <td height='23' width='80' align='center' bgcolor='#E5E5E5'><a class='text'>$dvig</td>
              <td height='23' width='75' align='center' bgcolor='#E5E5E5'><a class='text'>$transm</td>
              <td height='23' width='70' align='center' bgcolor='#E5E5E5'><a class='text'>$privod</td>
              <td height='23' width='65' align='center' bgcolor='#E5E5E5'><a class='text'>".$par['probeg']."</td>
              <td height='23' width='50' align='center' bgcolor='#E5E5E5'><a class='text'>".$par['price']."</td>
              <td height='23' width='70' align='center' bgcolor='#E5E5E5'><a class='text'>".$par['telephone']."</td>";


   
 
 автор: 10100100   (06.01.2006 в 09:52)   письмо автору
 
   для: technic611   (06.01.2006 в 07:09)
 

мда.. ну тогда я вижу два решения:
1 - отказаться от switch
2 - заносить цвета тоже в базу данных, но это не выход...
мдя... интересная задача...
а стоп, я так понимаю то нужно окрашивать то что снизу Эхом выводится? так? если так то можно Эхо разбить на несколько частей и как я уже говорил вставить туда HTML-ные тэги!

   
 
 автор: 10100100   (06.01.2006 в 09:54)   письмо автору
 
   для: technic611   (06.01.2006 в 07:09)
 

Блин, представляю как выглядит адресная строка :))))))))

   
 
 автор: cheops   (06.01.2006 в 13:16)   письмо автору
 
   для: technic611   (06.01.2006 в 03:52)
 

Возможно вам будет интересна тема по ссылке http://www.softtime.ru/forum/read.php?id_forum=1&id_theme=10576

   
 
 автор: Евгений Петров   (06.01.2006 в 16:59)   письмо автору
 
   для: technic611   (06.01.2006 в 03:52)
 

Простейший вариант:
<?
  $query 
mysql_query("SELECT * FROM tbl");
  
$color "black";
  while(
$fetch mysql_fetch_array())
  {
    
$color = ($color == "black")?"white":"black";
    echo 
"<font color=$color>$fetch[field]</font>";
  }
?>

   
 
 автор: dim0s   (13.01.2006 в 20:24)   письмо автору
 
   для: Евгений Петров   (06.01.2006 в 16:59)
 


$i=1;
while($row1=mysql_fetch_array($result1))
{
  if (is_int ($i/2))
  {
    $td_color=$config[str_color2];
  }
    else
  {
    $td_color=$config[str_color1];
  }
// Ну тут вывод, так для примера ...
echo "<td bgcolor=\"".$td_color."\" align=\"left\">"что-то"</td>";
}

Я вот таким способом это делаю. То бишь, проверяется делиться ли номер строки на 2 без остатка и если делиться то один цвет, если нет - то другой.

   
 
 автор: Loki   (13.01.2006 в 22:20)   письмо автору
 
   для: dim0s   (13.01.2006 в 20:24)
 

Забыли сделать инкременцию $i++;
а я бы сделал так:

<?
while($row1=mysql_fetch_array($result1)) 

  if (
$i
  { 
    
$td_color=$config[str_color2]; 
  } 
    else 
  { 
    
$td_color=$config[str_color1]; 
  } 
// Ну тут вывод, так для примера ... 
echo "<td bgcolor=\"".$td_color."\" align=\"left\">"что-то"</td>"
$i=!$i;
}
?>

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования