Перейти к содержимому

Как создать таблицу в php

  • автор:

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

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

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

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

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

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

Приступим

Для начала нужно придумать и понять алгоритм, которому мы будем следовать. Из чего состоит 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);

Итак, делаем с помощью 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

WordPress 6 с Нуля до Гуру

WordPress 6 с Нуля до Гуру

Этот курс научит Вас созданию самых разных сайтов на самой популярной в мире CMS — WordPress. Вы увидите установку и настройку локального сервера, разбор каждой настройки, каждой кнопки и каждого пункта меню в панели WordPress.

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

Помимо уроков к курсу идут упражнения для закрепления материала.

И, наконец, к курсу идёт ценнейший Бонус по тому, как используя ChatGPT и создавая контент для сайта, можно выйти на пассивный доход. Вы наглядно увидите, как зарегистрироваться в ChatGPT (в том числе, и если Вы из России), как правильно выбрать тему для сайта, как правильно генерировать статьи для него(чтобы они индексировались поисковыми системами) и как правильно монетизировать трафик на сайте.

Уроки и статьи

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

YouTube

Подписаться

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка

Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт

Мой аккаунт Моя группа

Какая тема Вас интересует больше?

Бесплатный курс

Мастер-класс по созданию сайта на WordPress 6

Мастер-класс по созданию сайта на WordPress 6

Этот видеоурок длится всего 21 минуту, но уже в конце создан полностью рабочий сайт на WordPress (с применением ChatGPT). И весь процесс Вы увидите своими глазами, а повторить — не составит труда!

Чтобы получить Видеокурс,
заполните форму

Бесплатный онлайн-семинар

Этапы создания и продвижения лендинга

Этапы создания и продвижения лендинга

После семинара:

— Вы увидите мои лендинги и их результаты.

— Вы узнаете, какие этапы создания и продвижения у лендингов.

— Вы получите 2 различных пошаговых бизнес-плана, основанных на создании лендингов.

— Вы узнаете, как автоматизировать продвижение: создали лендинг, настроили продвижение, и годами он работает уже без Вас.

Как создать таблицу в php

Для выполнения запросов к серверу базы данных у объекта PDO вызывается метод exec() , в который передается выполняемое выражение SQL.

$conn = new PDO("mysql:host=localhost", "root", "mypassword"); $conn->exec(команда_sql);

Создание базы данных

Для создания базы данных применяется SQL-команда CREATE DATABASE , после которой указывается имя создаваемой базы данных.

Создадим базу данных через PHP:

exec($sql); echo "Database has been created"; > catch (PDOException $e) < echo "Database error: " . $e->getMessage(); > ?>

В данном случае после подключения к серверу определяется переменная $sql , которая хранит команду на создание бд с именем «textdb1»:

$sql = "CREATE DATABASE testdb1";

Далее для выполнения этой команды передаем ее в метод exec() :

$conn->exec($sql);

В итоге при успешном создании базы данных мы увидим в браузере сообщение об создании БД:

Database has been created

Создание таблицы

Подобным образом можно выполнять запросы на создание таблиц в базе данных. Для создания таблиц применяется SQL-команда CREATE TABLE , после которой указывается имя создаваемой таблицы и в скобках определения столбцов.

Так, возьмем выше созданную базу данных «testdb1». И создадим в ней таблицу, которая описывается следующим кодом

CREATE TABLE Users (id INTEGER AUTO_INCREMENT PRIMARY KEY, name VARCHAR(30), age INTEGER);

Здесь создается таблица под названием «users». Она будет хранить условных пользователей. В ней будет три столбца: id, name и age. Столбец id представляет числовой уникальный идентификатор строки — или идентификатор пользователя. Столбец name представляет строку — имя пользователя. А столбец age представляет число — возраст пользователя.

Для создания таблицы определим следующий скрипт php:

exec($sql); echo "Table Users has been created"; > catch (PDOException $e) < echo "Database error: " . $e->getMessage(); > ?>

Обратите внимание, что по сравнению с предыдущим примером здесь в строке подключения указана база данных, в которой создается таблица: «mysql:host=localhost;dbname=testdb1»

И после успешного выполнения запрос мы увидим в браузере сообщение об создании таблицы:

Как создать таблицу в php

Допустим, в нашей базе данных хранится одна таблица со следующей структурой:

имя поля тип(длина) описание id целый(2) уникальный номер name символьный(100) имя tel символьный(20) телефон

Таблица имеет имя: customer, а наша база данных называется database. Допустим, что ваши данные для подключения к серверу MySQL такие:

Хост: localhost Имя пользователя: guest Пароль: mypassword

Для начала необходимо создать нашу таблицу customer. Напишем скрипт, который создаст в базе данных database таблицу customer. Назовём файл, который будет создавать таблицу, install.php. Содержимое файла install.php:

 < ?php// Данные для MySQL сервера $dbhost = "localhost"; // Хост $dbuser = "guest"; // Имя пользователя $dbpassword = "mypassword"; // Пароль $dbname = "database"; // Имя базы данных // Подключаемся к MySQL серверу $link = mysql_connect($dbhost, $dbuser, $dbpassword); if (false === $link) die ('Error database connect< br>'); // Выбираем нашу базу данных $select_result = mysql_select_db($dbname, $link); if (false === $select_result) die ('Error database select< br>'); // Создаём таблицу customer с помощью SQL-запроса $query = "create table customer (id int(2) primary key auto_increment, name varchar(100), tel varchar(20))"; $query_result = mysql_query($query, $link); if (false === $query_result) die ('Error database SQL query< br>'); // Закрываем соединение $close_result = mysql_close($link); if (false === $close_result) die ('Error database close< br>'); ?> 

Функция mysql_connect() возвращает идентификатор соединения. Этот идентификатор необходимо указывать во всех функциях MySQL.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *