Read values from MySQL

Отображение результата запроса в HTML-таблице в PHP

Мне нужно отобразить таблицу на веб-странице. Данные из таблицы поступают из базы данных, которую я могу запросить с помощью библиотеки mysql php. Я ищу шаблон/пример того, как придумать красивую таблицу (я плохо разбираюсь в дизайне переднего плана). Будет оценена любая ссылка/пример/ссылки.

5 ответов

Вот пример того, как читать таблицу MySQL в таблице HTML. И нет, это выглядит не очень хорошо.

       '; > ?>
' . $row['firstname'] . '' . $row['lastname'] . '

Что-то вроде this, если вы просто хотите дизайн интерфейса.

Ответы только на ссылки не приветствуются. Пожалуйста, попробуйте обобщить содержание статьи в вашем ответе.

Здесь функция, которая принимает результат запроса mysqli и возвращает таблицу HTML с заголовками и данными.

 0 ) < $table = ''; $nfields = mysqli_num_fields($query_result); while( $field = mysqli_fetch_field( $query_result ) ) < $table .= ''; > $table .= ''; $even = true; while( $row = mysqli_fetch_assoc($query_result) ) < $table .= ''; $even = !$even; foreach($row as $field => $value) < $table .= ''; > $table .= ''; > $table .= '
' . ucfirst($field->name) . '
' . $value . '
Query returned ' . $nrows . ' records.
'; > else < echo '

Query returned an empty result (no rows).

'; > return $table; > ?>

Я изменил его довольно сильно, но вот исходный источник ссылки: sql query → html table?!

Источник

Пример использования циклов: отрисовка HTML таблицы на PHP

Заметка: активирована адаптивная версия сайта, которая автоматически подстраивается под небольшой размер Вашего браузера и скрывает некоторые детали сайта для удобства чтения. Приятного просмотра!

Здравствуйте уважаемые читатели блога Site on! В прошлой статье мы рассмотрели всё о циклах в PHP, но для закрепления полученных теоритических материалов, предлагаю выполнить практическую задачу, которая довольно часто встречается в повседневной жизни разработчика сайтов.

В наших с вами любимых CMS для отрисовки любой HTML таблицы используются циклы, по-другому никак. Например, у товара (смартфона) есть характеристики: ширина, высота, глубина, цвет, размер дисплея, объём памяти и тд. Все эти свойства обычно отрисовываются в виде HTML таблицы, это очень удобно и хорошо, ровно выглядит.

Чтобы понять, как это делается, сегодня мы решим такую простую задачу, как создание таблицы умножения:

Читайте также:  Php working with hash

таблица умножения

Приступим

Для начала нужно придумать и понять алгоритм, которому мы будем следовать. Из чего состоит HTML таблица? Давайте я нарисую:

алгоритм

Как видим из рисунка, тег table встречается всего 1 раз, поэтому он явно должен быть вне цикла. Повторяется у нас только строка (tr) и внутри неё ячейки, они же столбцы (td). Всё, больше у нас ничего не повторяется.

Теперь нужно решить, какой цикл лучше использовать для данной задачи. Это классический вариант и лучшим решением будет цикл for, хотя можно использовать и while, если вы к нему привыкли больше. Но нам понадобится не один цикл, а два: первый будет рисовать и считать строки (tr), а второй столбцы (td).

// количество строк, tr $cols = 20; // количество столбцов, td echo ''; for ($tr=1; $tr// в этом цикле счётчик $tr // следит за количеством строк и всегда равен текущему номеру строки. // То есть в начале $tr=1, так как в начале у нас 1 строка, затем // каждый раз прибавляем единицу, пока не дойдём до заданного количества // $rows. echo ''; for ($td=1; $td// в этом цикле счётчик $td аналогичен // счётчику $tr. echo ''; > echo ''; > echo '
'. $tr*$td .'
'; ?>

результат

В первом цикле мы отрисовываем tr, внутри него td. Этот код можно было бы назвать идеальным шаблоном отрисовки любой таблицы, но я знаю, как сделать ещё лучше. Незачем каждый раз напрягать PHP и делать вывод на экран (echo) после каждой итерации, гораздо лучше поместить всё в одно место (переменную) и сделать echo в самом конце, один единственный раз:

// количество строк, tr $cols = 20; // количество столбцов, td $table = ''; for ($tr=1; $tr'; for ($td=1; $td'. $tr*$td .''; > $table .= ''; > $table .= '
'; echo $table; // сделали эхо всего 1 раз ?>

Для этого мы использовали оператор .= присвоение через конкатенацию. Результат будет точно таким же. Но это ещё не всё. Нам нужно привести нашу таблицу к виду, как на самом первом рисунке в этой статье. То есть сделать первую строку и столбец полужирным и поставить зелёный фон. Такого результата можно добиться двумя способами:

  • С помощью CSS3 (правильный способ);
  • С помощью PHP (неправильный способ, но возьмём его, так как в этом разделе учим PHP);
Читайте также:  What is callback function in java

Итак, делаем с помощью PHP:

// количество строк, tr $cols = 20; // количество столбцов, td $table = ''; for ($tr=1; $tr'; for ($td=1; $td'. $tr*$td .''; // вычислили первую строку или столбец >else< $table .= ''; // все ячейки, кроме ячеек из первого столбца и первой строки > > $table .= ''; > $table .= '
'. $tr*$td .'
'; echo $table; // сделали эхо всего 1 раз ?>

Красота 🙂 Можете выводить таблицу хоть 100 на 100. Балуйтесь, как хотите, это полезно для опыта. Спасибо за внимание, и приятных вам выходных!

Источник

Внешний вид таблицы PHP

Я написал код для отображения таблицы html с помощью PHP. Он считывает данные из файла и проверяет, является ли значение истинным или ложным.

Проблема в некрасивом виде таблицы в конце функции:

True False blue Red Red blue 

Я хотел бы отобразить такую ​​таблицу:

True False blue Red blue Red 

Также он отображает результат до завершения функции c.q flush (); Вот код:

?>    else < ?>  sleep(1); ob_flush(); flush(); > ?>
True False

Я понимаю, что этот код выводит таблицу, как в первом примере, но я не могу понять, как изменить ее, чтобы она соответствовала второму примеру?

2 ответа

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

В «таблице», которую вы хотите отобразить, элементы в каждой строке не связаны друг с другом.

На самом деле вы создаете здесь 2 списка, а не таблицу как таковую.

Я бы сделал что-то подобное

Затем вы можете расположить свои списки бок о бок с помощью CSS.

$true = array(); $false = array(); foreach ($trimmed_array as $value) < if (check($value) == 0) < $true[] = $value; >else < $false[] = $value; >> for ($i = 0; $i < max(count($true), count($false)); $i++) < echo '' . (isset($true[$i]) ? $true[$i] : '') . ' ' . (isset($false[$i]) ? $false[$i] : '') . ' '; > 

Источник

PHP – вывод таблицы зеброй

PHP – вывод таблицы зеброй

Довольно часто требуется вывести таблицу зеброй. В основном это какие-нибудь прайс-листы. Подсветка такого рода очень облегчает пользователю считывать с экрана своего монитора информацию с вашего сайта. Так как не нужно сильно напрягать глаза, чтобы не запутаться в сплошных строках таблицы.

Мы с Вами напишем собственную функцию, которая будет отвечать за вывод таблицы зеброй. И так приступим.

  //Рисуем саму таблицу $tbl = ''."\n"; //Определяем переменную для инкремента $i = 0; //Перебираем массив с данными и вставляем в ячейки таблицы foreach($data as $val) < $tbl .= ''."\n"; $tbl .= ''."\n"; $tbl .= ''."\n"; > $tbl .= '
'. $val .'
'."\n"; //Выводим сгенерированную таблицу echo $tbl; ?>

Пример №1 — Вывод таблицы зеброй

Мы создали функцию, которая отвечает за генерацию цвета строки ячеек в таблицы. Теперь, когда нам нужно в таблицу вывести зеброй мы всего лишь на всего вызываем нашу функцию. Если нужно изменить цвета, то мы лишь в одном месте меняем их в теле функции, а не бегаем судорожно по страницам с кодом и исправляем везде. Согласитесь, удобней поменять значения параметра в одном месте, чем искать их в разных местах.

Но данный пример не очень гибкий. Дело в том, что данная реализация позволяет нам сохранить стиль наших таблиц на всем нашем , но бывают случаи, когда нужно таблицу разукрасить другими цветами. Чтобы не писать новую функцию специально для одной таблицы или нескольких мы немного модифицируем нашу функцию.

  //Рисуем саму таблицу $tbl = ''."\n"; //Определяем переменную для инкремента $i = 0; //Перебираем массив с данными и вставляем в ячейки таблицы foreach($data as $val) < //Получаем цвет заливки по умолчанию $color = bgColorTable($i++); $tbl .= ''."\n"; $tbl .= ''."\n"; $tbl .= ''."\n"; $tbl .= ''."\n"; > //Перебираем массив с данными и вставляем в ячейки таблицы foreach($data as $val) < //Получаем цвет заливки с новыми цветами $color = bgColorTable($i++, '#ff0000','#ffcc00'); $tbl .= ''."\n"; $tbl .= ''."\n"; $tbl .= ''."\n"; $tbl .= ''."\n"; > //Закрываем таблицу $tbl .= '
'. $val .''. $color .'
'. $val .''. $color .'
'."\n"; //Выводим сгенерированную таблицу echo $tbl; ?>

Пример №2 — Вывод таблицы зеброй

1 #c0c0c0
2 #ffffd0
3 #c0c0c0
4 #ffffd0
5 #c0c0c0
1 #ffcc00
2 #ff0000
3 #ffcc00
4 #ff0000
5 #ffcc00

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

Источник

Оцените статью