Как сделать сайт с базой данных mysql
Перейти к содержимому

Как сделать сайт с базой данных mysql

  • автор:

#15 — Создание базы данных и подключение к ней

#15 - Создание базы данных и подключение к ней

В этом уроке мы создадим и подключимся к базе даных используя PHP. Это позволит в дальнейшем работать с базой данных через код: добавлять записи, редактировать их, удалять, создавать новые таблички и так далее.

Видеоурок

Материалы для курса

Чтобы скачивать материалы к видеокурсам необходимо оформить подписку на сайт

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

Для каждого сайта мы рекомендуем создавать отдельную базу данных.

Для создания новой базы данных перейдите в раздел Базы данных панели управления хостингом, а затем выберите кнопку Создать базу.

В новом окне введите имя базы и нажмите кнопку Создать.

В меню Принадлежность из выпадающего списка выберите сайт, который будет использовать данную базу, нажмите на кнопку Сохранить.

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

На этом настройка завершена. Теперь вы можете использовать базу данных для размещения нового сайта.

Создание таблицы при загрузке сайта

Для начала у вас должен быть установлен PHP. Чтобы получить версию, запускаем:

php -v

Вот такой ответ должен прийти:

Теперь установим сервер MySQL. Для этого открываем терминал и запускаем:

sudo apt-get install mysql-server

Вводим пароль, чтобы начать установку, и нажимаем на Enter.

Проверяем, установлен ли MySQL, этой командой:

sudo mysql

Если установка прошла успешно, выводится примерно следующее:

Теперь для доступа к базе данных с использованием программы на PHP нужно передать в качестве аргументов в SQL-запросе имя пользователя и пароль. Поэтому создадим пользователя с паролем и предоставим ему права доступа к базе данных.

Нового пользователя и пароль создаем, выполняя следующую команду:

sudo mysql -u rootCREATE USER 'newuser'@'localhost' IDENTIFIED BY 'password';

Теперь предоставим пользователю разрешения на доступ к базе данных, а заодно убедимся, что эти права доступа отображаются (для этого задействуем команду flush ):

GRANT ALL PRIVILEGES ON *.* TO 'newuser'@'localhost';FLUSH PRIVILEGES;

И для доступа к MySQL в Google Cloud:

GRANT ALL PRIVILEGES ON `%`.* TO 'newuser'@'localhost';

Для привязки ко всем адресам запускаем это:

#bind-address = 127.0.0.1

Для создания нового пользователя и пароля нужно выполнить указанные выше команды. После добавления нового пользователя выходим и перезапускаем сервер MySQL:

exit
service mysql restart

Обратите внимание: в случае с PHP версией 7+ для правильного выполнения команд MySQL необходимо использовать расширение MySQLi. Функции MySQLi позволяют получать доступ к серверам баз данных MySQL.

Для установки расширения MySQLi запускаем:

Sudo apt Install php-mysqli

Теперь все готово к выполнению программ на PHP с интегрированием MySQL. Переходим к решению сформулированной выше задачи.

Первым делом создадим базу данных на сервере MySQL. Для этого подключимся к серверу MySQL:

sudo mysql

Для того, чтобы создать таблицу, сначала нужно создать базу данных. Следующей командой создаем базу данных с названием «test»:

create database test;

Дальше эту базу данных нужно выбрать:

use test;
exit

Код для создания таблицы при загрузке сайта

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

Как было указано в необходимых условиях, в качестве хоста будет использоваться Apache2, поэтому выполняем такие команды:

cd /var/www/html
vim sqltest.php

С их помощью создается файл и открывается редактор Vim.

Копируем и вставляем в редактор следующий код:



creating mysql tables


$dbhost = 'localhost';
$dbuser= 'newuser';
$dbpass = 'password';
$conn = mysqli_connect($dbhost , $dbuser , $dbpass,"test");
if(!$conn) die('Could not connect:'.mysqli_error($conn));
>
echo 'Connected successfully
';
$sql="CREATE TABLE student(".
"USN INT NOT NULL,".
"Name VARCHAR(100) NOT NULL,".
"Marks VARCHAR(40) NOT NULL);";
mysqli_select_db($conn,'test');
$retval=mysqli_query($conn,$sql);
if(! $retval) die('Could not create table:'.mysqli_error($conn));
>
echo "Table created successfully\n";
mysqli_close($conn);
?>

В строках 7, 8 и 9 объявляются переменные, в которых сохраняются имя пользователя, пароль и localhost. Дальше они задействуются в строке 10 и передаются в качестве параметров в команду mysqli_connect , которой инициируется соединение с сервером MySQL. Если соединение установить не удалось, для отображения ошибки используется оператор if и mysqli_error() . Затем пишется запрос на создание таблицы, который присваивается переменной sql . И запускается запрос для выбора базы данных test . После чего запускается mysqli_query для создания таблицы посредством передачи в качестве параметров переменных sql и connection .

Теперь сохраняем файл и выходим из него, открываем браузер и заходим на этот сайт:

Если все работает правильно, получаем сообщение об успешном создании таблицы.

Если при открытии сайта сообщения не видно, переходим в каталог, в котором создан файл:

cd /var/www/html

И выполняем в терминале следующую команду:

php -S localhost:8000

Открываем браузер и заходим на такой сайт:

Теперь сообщение об успешном создании таблицы будет видно.

Проверим, выполнив в терминале команду:

sudo mysql
use test;
desc student;

Примечания:
1) Имя пользователя MySQL — «newuser», а пароль — «password».
2) Поменяйте все команды с MySQL на MySQLi, если у вас версия PHP 7+ , например mysql_connect станет mysqli_connect , а mysql_error() станет mysqli_error() .

Появление возможных ошибок, и как с ними справиться:

  1. При выполнении команды создания проверяйте, те ли кавычки используете. Ведь ` и ‘ — это разные знаки.
  2. Если при выполнении программы есть какая-либо ошибка в SQL-запросе, связанная с форматом, то при присваивании $sql
$sql=”CREATE TABLE student(“.“USN INT NOT NULL,”.“Name VARCHAR(100) NOT NULL,”.“Marks VARCHAR(40) NOT NULL);”;

поставьте в конце запроса вместо точки точку с запятой.

3. Если возникли проблемы с командами MySQLi, выполните следующие команды:

php -v

Затем запишите свою версию PHP. Для этого в первой из следующих четырех команд замените x.x на свою версию PHP:

sudo apt-get install phpx.x-mysqli
sudo service apache2 restart
sudo phpenmod mysqli
sudo service apache2 restart

Так, если у вас версия PHP 7.4, то команда будет sudo apt-get install php7.4-mysqli.

4. Каждый раз, когда заходите на свой сайт на PHP, запускайте в каталоге, где находится программа на PHP, следующую команду:

php -S localhost:8000

И при получении какой-либо ошибки, например такой:

Запускайте эту команду:

fuser -k 8000/tcp

И после выполнения php -S localhost:8000 он заработает. Так как процесс, задействующий этот порт, будет уничтожен и его можно будет использовать.

Еще одна программа на PHP

И вот еще одна программа на PHP для добавления новых записей в таблицу, попробуйте.

Прежде чем выполнять программу, запускаем запрос в MySQL для создания таблицы:

create table book(Acc_no INTEGER(20),Title varchar(50),Author varchar(50),Publisher varchar(50),Edition INTEGER(3));

HTML-код


Deatails


ENTER DETAILS


ACCNO



TITLE



AUTHOR



EDITION



PUBLICATION







PHP-код:

header('content-type:text/plain');
$db=mysqli_connect('localhost','newuser','password','test');
if(!$db) die('Could not connect:');
>
$sql="insert into book (Acc_no,Title,Author,Publisher,Edition)".
"values('$_REQUEST[Acc_no]',".
"'$_REQUEST[Title]','$_REQUEST[Author]',".
"'$_REQUEST[Publisher]','$_REQUEST[Edition]');";
mysqli_select_db($db,'test');
$retval=mysqli_query($db,$sql);
if(! $retval) die('Could not insert values');
>
echo "Record Insertion Successful";
?>
  • Ключевое слово static в PHP
  • Хочешь стать веб-разработчиком? Учи Node.js, а не PHP
  • Java убьет ваш стартап. PHP спасёт его

Как сделать сайт с базой данных mysql

Русский Флаг

Русский

Войти

Как создать базу данных для сайта

В Quintadb.ru Сделать базу данных онлайн можно за 5 минут. Вы создаете БД в меню Формы и все записи базы данных будут в меню Записи. Также можно сделать БД, испортируя файлы Excel или CSV

В этой статье я расскажу как с помощью онлайн сервиса QuintaDB создать базу данных для сайта или блога.

Сегодня самый простой и быстрый способ создать базу для сайта — это использование онлайн сервиса QuintaDB:

  • 1) Вам не нужны знания языков программирования (PHP, HTML) или каких-либо веб-технологий, например, MySQL;
  • 2) Весь процесс создания базы данных очень прост и занимает всего несколько минут;
  • 3) Вы можете редактировать свою базу вместе с друзьями;
  • 4) Доступна функциональность поиска и сортировки записей в базе данных, импорта данных из Excel и экспорта данных в Excel.

Итак приступаем к созданию базы данных:

Зарегистрируйтесь на сайте QuintaDB.ru любым удобным для вас способом.

Создайте новый проект и форму (для одного проекта вы можете создавать неограниченное количество форм). Для этого перейдите в меню «Мои проекты» и нажмите кнопку «Создать проект«.

no_image

Рассмотрим вариант «Создать проект с нуля«.

После нажатия соответствующей кнопки, необходимо ввести название проекта и первой формы нового проекта.

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

Теперь добавим несколько полей на форму, которые будут служить колонками в таблице данных. Для добавления поля нажимаем кнопку «Добавить новое поле на форму«, указываем название поля и его тип, который определяет тип вводимой в данное поле информации (текст, числа, файлы и т.д.). Вы можете переключаться между категориями полей (Стандартные, Дополнительные, Разделители и другие).

Видео с примером создания формы:

no_image

Теперь данную форму можно использовать для заполнения базы данных.

Как изменить поле

Ниже показано, как редактировать, изменить название или тип поля на веб-форме.
1) Нужно кликнуть по иконке контекстного меню и выбрать из списка Редактировать.
(На этой странице вы можете изменить название и настройки)
2) Перейти во вкладу Тип поля.
3) Выбрать новый тип поля и нажать на кнопку Обновить.

Сортировка полей в Конструкторе формы

Используя метод drag and drop, вы можете перемещать поля на форме по-вертикали и по-горизонтали.

Для этого используйте иконки, как показано на картинке ниже:

Обратите внимание: если в строке есть поле не отображаемое на форме, то у него будет отсутствовать иконка для перемещения по горизонтали.

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

После этого, в случае необходимости, опцию можно снова отключить.

Добавление новой записи

Добавить запись в базу данных вы можете в меню Записи. Жмем на кнопку «Добавить новую запись«, откроется наша форму, заполняем ее и жмем на кнопку «Создать«. Ниже представлен скриншот как выглядит добавление записи на десктопе и мобильной версии:

Чтобы настроить функциональность формы или таблицы базы данных, переходим в меню «Виджет Формы» или «Виджет Таблицы«.

Боковое меню

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

интеграция виджета формы

Для использования имеющихся готовых форм при создании обратите внимание на блок «Создать форму по шаблону» и выберите стрелками подходящий шаблон. После этого нажмите на кнопку «Использовать форму«.

В несколько кликов и буквально за 2 минуты мы создали Регистрационную форму. Теперь мы можем разместить ее на свой сайт и принимать отзывы от пользователей.

И последний способ создания формы — это «Импорт данных«. Прочитать подробную статью можно здесь.

Еще статьи:

Сила онлайн-баз данных — Упростите управление данными с QuintaDB

Папки для отчетов, экспорт пользователей и прочее

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

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