Меню
×
   ❮     
HTML CSS JAVASCRIPT SQL PYTHON PHP КАК
     ❯   

PHP Учебник


PHP Формы


PHP Продвинутый


PHP ООП


MySQL База данных


PHP XML


PHP - AJAX


PHP Примеры


PHP Справочник



PHP - MySQL Выбрать данные в БД



Выбор данных из базы данных MySQL

Команда SQL SELECT используется для выбора данных из таблицы.

Чтобы выбрать определенные столбцы из таблицы, используйте следующий синтаксис:

SELECT column1, column2, column3 FROM table_name

Чтобы выбрать ВСЕ столбцы из таблицы, используйте символ *:

SELECT * FROM table_name

Чтобы узнать больше о SQL, посетите наш учебник по SQL.


Выбор данных с помощью MySQLi

В следующем примере выбираются столбцы id, firstname и lastname из таблицы MyGuests и отображаются на странице:

Пример - MySQLi объектно-ориентированный

<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";

// Создаем подключение
$conn = new mysqli($servername, $username, $password, $dbname);
// Проверяем подключение
if ($conn->connect_error) {
  die("Подключение не удалось: " . $conn->connect_error);
}

$sql = "SELECT id, firstname, lastname FROM MyGuests";
// Выполняем SQL-запрос
$result = $conn->query($sql);

// Обрабатываем набор результатов
if ($result->num_rows > 0) {
  // Выводим данные каждой строки
  while($row = $result->fetch_assoc()) {
    echo "id: " . $row["id"]. " - Имя: " . $row["firstname"]. " " . $row["lastname"]. "<br>";
  }
} else {
  echo "0 результатов";
}

$conn->close();
?>

Пояснение к коду

Сначала мы создаем SQL-запрос, который выбирает столбцы id, firstname и lastname из таблицы MyGuests.

Следующая строка кода $conn->query($sql) выполняет запрос и помещает полученные данные в переменную $result.

Затем строка $result->num_rows > 0 проверяет, возвращено ли более 0 строк.

Если возвращено более 0 строк, функция fetch_assoc() помещает набор результатов в ассоциативный массив, который мы можем перебирать. Цикл while() перебирает набор результатов и выводит данные из столбцов id, firstname и lastname.

Следующий пример показывает то же самое, что и пример выше, но в процедурном стиле MySQLi:

Пример - MySQLi процедурный

<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";

// Создаем подключение
$conn = mysqli_connect($servername, $username, $password, $dbname);
// Проверяем подключение
if (!$conn) {
  die("Подключение не удалось: " . mysqli_connect_error());
}

$sql = "SELECT id, firstname, lastname FROM MyGuests";
// Выполняем SQL-запрос
$result = mysqli_query($conn, $sql);

// Обрабатываем набор результатов
if (mysqli_num_rows($result) > 0) {
  // Выводим данные каждой строки
  while($row = mysqli_fetch_assoc($result)) {
    echo "id: " . $row["id"]. " - Имя: " . $row["firstname"]. " " . $row["lastname"]. "<br>";
  }
} else {
  echo "0 результатов";
}

mysqli_close($conn);
?>


Помещение результата в HTML таблицу

Здесь мы помещаем результат в HTML таблицу:

Пример - MySQLi объектно-ориентированный

<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";

// Создаем подключение
$conn = new mysqli($servername, $username, $password, $dbname);
// Проверяем подключение
if ($conn->connect_error) {
  die("Подключение не удалось: " . $conn->connect_error);
}

$sql = "SELECT id, firstname, lastname FROM MyGuests";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
  echo "<table><tr><th>ID</th><th>Имя</th></tr>";
  // выводим данные каждой строки
  while($row = $result->fetch_assoc()) {
    echo "<tr><td>".$row["id"]."</td><td>".$row["firstname"]." ".$row["lastname"]."</td></tr>";
  }
  echo "</table>";
} else {
  echo "0 результатов";
}

$conn->close();
?>

Выбор данных с помощью PDO

В следующем примере выбираются столбцы id, firstname и lastname из таблицы MyGuests и отображаются в HTML таблице:

Пример - PDO

<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";

try {
  $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
  // устанавливаем режим ошибок PDO в исключение
  $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch(PDOException $e){
  die("Не удалось подключиться. " . $e->getMessage());
}

try {
  $sql = "SELECT id, firstname, lastname FROM MyGuests";
  // Выполняем SQL-запрос
  $result = $conn->query($sql);
  // Обрабатываем набор результатов
  if ($result->rowCount() > 0) {
    echo "<table><tr><th>ID</th><th>Имя</th><th>Фамилия</th></tr>";
    // Выводим данные каждой строки
    while($row = $result->fetch()) {
      echo "<tr>";
      echo "<td>" . $row['id'] . "</td>";
      echo "<td>" . $row['firstname'] . "</td>";
      echo "<td>" . $row['lastname'] . "</td>";
      echo "</tr>";
    }
    echo "</table>";
    unset($result);
  } else {
    echo "Записи не найдены.";
  }
} catch(PDOException $e) {
  echo "Ошибка: " . $e->getMessage();
}

$conn = null;
?>


×

Связаться с отделом продаж

Если вы хотите использовать услуги schoolsw3 как образовательное учреждение, команда или предприятие, отправьте нам электронное письмо:
sales@schoolsw3.com

Сообщить об ошибке

Если вы хотите сообщить об ошибке или внести предложение, отправьте нам электронное письмо:
help@schoolsw3.com

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

Авторское право 1999- © Copyright. Все права защищены. Schoolsw3 работает на SW3.CSS.