[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Вывод БД в html
sourcepeople
Доброго Всем времени!
Не удивлюсь если данная тема обсуждается не в первый раз. Заранее извиняюсь если это так.

Прошу помощи в освоении языка программирования.
Возникла проблема с отображением данных из Mysql.
PHP
/* Выводим результаты в html */
    
print "<table border=1>\n";
    while (
$line mysql_fetch_array($resultMYSQL_ASSOC)) {
        print 
"\t<tr>\n";
        foreach (
$line as $col_value) {print "\t\t<td>$col_value</td>\n";}
        print 
"\t</tr>\n";}
    print 
"</table>\n";

Если в поле данные есть - все отображается.
Как сделать так, что бы пустые поля отображались как NULL (для того, чтобы не было пустых пространств в таблице, а каждое поле бд отображалось в таблице на экране браузера даже если в нем нет данных)



Спустя 1 час, 39 минут (22.10.2009 - 20:57) Guest написал(а):

Спустя 6 минут, 54 секунды (22.10.2009 - 21:04) krasilich написал(а):
PHP
print "<table border=1>\n";
while ($line = mysql_fetch_array($result, MYSQL_ASSOC)) 
{
  print "\t<tr>\n";
  foreach ($line as $col_value) 
  
{
     if($col_value == '') $col_value = 'NULL';
     print "\t\t<td>$col_value</td>\n";
  }
  print "\t</tr>\n";}
  print "</table>\n";
}

Спустя 15 минут, 33 секунды (22.10.2009 - 21:20) sergeiss написал(а):
Если нужно в ячейче таблицы вывести пустое значение, то туда можно впечатать такое значение:
PHP
echo '<td>&nbdp;</td>';

Тогда будет прорисована полноценная ячейка таблицы, но с пустым содержанием.

Спустя 12 часов, 18 минут, 16 секунд (23.10.2009 - 09:38) sourcepeople написал(а):
Вот спасибо огромное Вам всем)))
все работает как запрограммировано!
не могу только echo '<td>&nbdp;</td>'; реализовать))) но это не так уже важно))))

Спустя 39 минут, 43 секунды (23.10.2009 - 10:18) web-dev написал(а):
&nbsp;

Спустя 44 минуты, 21 секунда (23.10.2009 - 11:02) sergeiss написал(а):
web-dev - сорри, ты прав, я просто "тупо" опечатался rolleyes.gif

Спустя 23 минуты, 25 секунд (23.10.2009 - 11:26) sourcepeople написал(а):
// Выводим заголовок таблицы:
echo "<table border=\"1\" bgcolor=\"#FFFFE1\">";
echo "<tr><td width=\"160\">id заказчика</td><td width=\"160\">Фамилия</td><td width=\"160\">Город</td>";
echo "<td width=\"160\">рейтинг</td><td width=\"160\">id продавца</td></tr>";



Как можно "хитрее" создать подписи для каждой колонки?(название колонок скорее всего будут длинные. Наверное придётся их писать вертикально, но они должны быть той же длинны что и размер в таблице и стоять точно на своем месте)

Спустя 3 часа, 32 минуты, 35 секунд (23.10.2009 - 14:58) Kuliev написал(а):
sourcepeople
смотри вот здесь

Спустя 1 день, 1 час, 14 минут, 17 секунд (24.10.2009 - 16:12) sourcepeople написал(а):
Kuliev, благодарствую очень позновательно!





Спустя 15 минут, 9 секунд (24.10.2009 - 16:28) sourcepeople написал(а):
проблема такова: когда пишешь скрипт пхп в index.php скрипт работает нормально. а если любой скрипт вставить в index.htm то он не работает! сервер вообще не воспринимает пхп код в *.html ! в чем может быть проблема

Спустя 5 дней, 22 часа, 6 минут, 36 секунд (30.10.2009 - 15:34) G3/SG1 написал(а):
В том, что сервер по умолчанию не обрабатывает HTML страницы как PHP. Добавь в файл .htacess вот эту строку:

Цитата
AddType application/x-httpd-php .html .htm

Спустя 2 дня, 10 часов, 13 минут, 37 секунд (3.11.2009 - 01:48) sourcepeople написал(а):
G3/SG1, аха спс! работает!


кто может подсказать правильное решение проблемы вывода названия столбцов таблици?
желательно что-то динамичное так как полей много и размеры их часто меняются????

Спустя 1 день, 15 часов, 28 минут, 18 секунд (4.11.2009 - 17:16) Guest написал(а):
вывод подписей сделал следующим образом:
PHP
function tbl_print($result)
{
print 
"<table border=1 cellpadding=3 bgcolor=#E0E0E0>\n";

/* Заголовок таблици */
while ($link mysql_fetch_assoc($result))
{
print 
"\t<tr bgcolor=#99999>\n";
foreach (
$link as $col_name => $col_value)
{
if(
$col_name == 'ankid'Подмигивание $col_name '№ анкеты';
print 
"\t\t<td align=center><font size=2>$col_name</font></td>\n";
}
print 
"\t</tr>\n";
break;
}

/* Таблица результатов запроса */
while ($line mysql_fetch_assoc($result))
{
print 
"\t<tr bgcolor=#F5F5F5>\n";
foreach (
$line as $col_name => $col_value)
{
if(
$col_value == ''Подмигивание $col_value '&nbsp;';
print 
"\t\t<td>$col_value</td>\n";
}
print 
"\t</tr>\n";
}
print 
"</table>\n";

/* Освобождаем память от результата */
mysql_free_result($result);
}



Функция работает немного не правильно. вместо первой записи таблицы выводит заголовок.
Что я сделал не так? Как надо изменить функцию чтобы вывод заголовка не отражался на вывод результата из бд?

Спустя 6 месяцев, 10 дней, 3 часа, 44 минуты, 33 секунды (14.05.2010 - 20:01) Guest написал(а):
помогите пожалуйста
вывожу бд таким способом:

<?php
$link = mysql_connect("localhost", "****", "****")
or die("Could not connect : " . mysql_error());
mysql_select_db("fiip") or die("Could not select database");
$query = "SELECT F1, F2, F3, F4, F5 FROM rasp_1k";
$result = mysql_query($query) or die("Query failed : " . mysql_error());
print "<table border=1>\n";
while ($line = mysql_fetch_array($result, MYSQL_ASSOC)) {
print "\t<tr>\n";
foreach ($line as $col_value)
{
if($col_value == '') $col_value = ' ';
print "\t\t<td>$col_value</td>\n";
}
print "\t</tr>\n";}
print "</table>\n";
mysql_free_result($result);
?>


все выглядит вот так:
user posted image


а хотелось бы компактнее без пустых строк:
user posted image

как реализовать подскажите?
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.