Первые запросы в БД

Как гайд?


  • Всего проголосовало
    4
Начинающий
Статус
Оффлайн
Регистрация
30 Май 2017
Сообщения
25
Реакции[?]
30
Поинты[?]
0
Приветствую посетителей форума yougame.biz!
Сегодня мы научимся делать запросы и подключаться к базе данных.
Нам понадобится: хостинг с поддержкой MySQL, если его нет можно воспользоваться программой open server(не реклама),
также текстовый редактор (Какой вам удобнее, тот же блокнот).
И так, начнём:
Для начала создадим папку, в которой будут находиться все наши файлы:

Пожалуйста, зарегистрируйтесь или авторизуйтесь, чтобы увидеть содержимое.


В этой папке создадим 3 файла:

  • index.php
  • query.php
  • bd.php

Пожалуйста, зарегистрируйтесь или авторизуйтесь, чтобы увидеть содержимое.


В файл index.php поместим начальную html разметку (просто можете скопировать)
HTML:
<!DOCTYPE html>

<html lang="ru">
<head>
    <meta charset="UTF-8">
    <title>PHP yougame.biz</title>
</head>
<body>
 
</body>
</html>
Заходим в bd.php, наш файл начнётся с тега, который обозначает, что мы пишем на php
PHP:
<?php
//здесь мы будем писать код
?>
Что-ж мы в него напишем? А напишем мы подключение к базе данных, нам поможет в этом функция:
PHP:
mysqli_connect(); //данная функция подключает нас к базе данных
В параметрах этой функции (в скобочках), мы передадим,хост(сервер), имя пользователя, пароль, имя базы данных:
Код:
$connect; //это переменная, она служит для хранения информации
$connect = mysqli_connect('HOST','USERNAME','PASSWORD','BD'); //поместим в переменную, чтобы использовать функцию в дальнейшем
Сохраняем и закрываем файл...
Дальше...
Открываем файл query.php
В этом файле мы напишем запрос для базы данных:
Создадим функцию, которая будет отправлять и получать запросы из БД.
PHP:
<?php
function query(){
    query//название функции, может быть любым
}
?>
Чтобы сделать запрос, нам надо создать БД, заходим phpMyAdmin и создаём таблицу с именем tablet и двумя столбцами.
Пожалуйста, авторизуйтесь для просмотра ссылки.
Называем столбцы и ставим им тип
id - int, title - text.
Пожалуйста, авторизуйтесь для просмотра ссылки.
Также столбцу id ставим auro increment т.е. он будет увеличиваться сам с каждой записью.
Пожалуйста, авторизуйтесь для просмотра ссылки.
Возвращаемся в файл query.php и пишем:
PHP:
$query = "SELECT * FROM tablet"; //это наш запрос к БД, он означает, что MySQL выбирает все элемент из таблицы tablet
Теперь мы должны его отправить, в этом нам поможет функция mysqli_query();
Код:
<?php

function query(){
    $query = "SELECT * FROM tablet";
    global $connect;//для того, чтобы видеть глобальную переменную из bd.php
    $sql = mysqli_query($connect, $query); //подключаемся, запрашиваем
}
?>
Но бд нам вернёт массив
Пожалуйста, авторизуйтесь для просмотра ссылки.
без текстовых тегов, это неудобно, преобразуем наш полученный ответ в нормальный для нас массив.
PHP:
<?php
function query(){
    $query = "SELECT * FROM tablet";
    global $connect;
    $sql = mysqli_query($connect, $query);
    $res = mysqli_fetch_all($sql, 1);  //сделает нам текстовой массив
}
?>
Почти всё..
Теперь нам надо вернуть результат:
PHP:
<?php
function query(){
    $query = "SELECT * FROM tablet";
    global $connect;
    $sql = mysqli_query($connect, $query);
    $res = mysqli_fetch_all($sql, 1);
    return $res;
}
?>
Сохраняем переходим в index.php.
Тут мы пойдём в цикл, чтобы вытащить данные

Код:
<!DOCTYPE html>
<html lang="eru>
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>
    <?php
    foreach () {
    
    }
    ?>
</body>
</html>
Также мы создадим переменную, которая будет равна нашей функции:
PHP:
<!DOCTYPE html>
<html lang="eru>
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>
    <?php
    $text = query();
    foreach () {
    
    }
    ?>
</body>
</html>
В цикл мы помещаем $text и создаём новую $key:
PHP:
<!DOCTYPE html>
<html lang="eru>
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>
    <?php
    $text = query();
    foreach ($text as $key) {
    
    }
    ?>
</body>
</html>
А в теле цикла мы будем выводить нашу БД
PHP:
<!DOCTYPE html>
<html lang="eru>
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>
    <?php
    $text = query();
    foreach ($text as $key) {
        echo $key['title'];
    }
    ?>
</body>
</html>
Вставим что-нибудь в БД:
Пожалуйста, авторизуйтесь для просмотра ссылки.
И подключим все файлы воедино
PHP:
<!DOCTYPE html>
<html lang="eru>
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>
    <?php
    include_once('query.php');
    $text = query();
    foreach ($text as $key) {
        echo $key['title'];
    }
    ?>
</body>
</html>
PHP:
<?php
include_once('bd.php');
function query(){
    $query = "SELECT * FROM tablet";
    global $connect;
    $sql = mysqli_query($connect, $query);
    $res = mysqli_fetch_all($sql, 1);
    return $res;
}
?>

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

Всем удачи в вёрстке! Гайд писался для самых маленьких, не бейте палками.
 
Последнее редактирование:
Пользователь
Статус
Оффлайн
Регистрация
14 Янв 2018
Сообщения
233
Реакции[?]
52
Поинты[?]
0
$query = "SELECT * FROM tablet";
Если проекты будут масштабные, то звездочку лучше конкретизировать )
А, так мне понравилось, лови лойс:seemsgood:

Сделай урок про "ILIKE" (поиск)
 
Сверху Снизу