Oc-windows.ru

IT Новости из мира ПК
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Php select from

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

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

Инструкция SELECT используется для выбора данных из одной или нескольких таблиц:

или мы можем использовать символ * для выбора всех столбцов из таблицы:

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

Выбор данных с mysqli

В следующем примере выбираются столбцы ID, имя и фамилия из таблицы мигуестс и отображаются на странице:

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

connect_error) <
die(«Connection failed: » . $conn->connect_error);
>

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

if ($result->num_rows > 0) <
// output data of each row
while($row = $result->fetch_assoc()) <
echo «id: » . $row[«id»]. » — Name: » . $row[«firstname»]. » » . $row[«lastname»]. «
«;
>
> else <
echo «0 results»;
>
$conn->close();
?>

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

Сначала мы наводим SQL-запрос, который выбирает столбцы ID, имя и фамилия из таблицы мигуестс. Следующая строка кода запускает запрос и помещает результирующие данные в переменную с именем $result.

Затем проверяет, function num_rows() если есть более нуля строк, возвращаемых.

Если возвращено более нуля строк, функция fetch_assoc() помещает все результаты в ассоциативный массив, через который можно пройти цикл. while() цикл проходит через результирующий набор и выводит данные из столбцов ID, имя и фамилия.

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

Пример (mysqli процедурный)

0) <
// output data of each row
while($row = mysqli_fetch_assoc($result)) <
echo «id: » . $row[«id»]. » — Name: » . $row[«firstname»]. » » . $row[«lastname»]. «
«;
>
> else <
echo «0 results»;
>

Вы также можете поместить результат в таблицу HTML:

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

connect_error) <
die(«Connection failed: » . $conn->connect_error);
>

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

if ($result->num_rows > 0) <
echo »

«;
// output data of each row
while($row = $result->fetch_assoc()) <
echo »

«;
>
echo «

IDName
«.$row[«id»].»«.$row[«firstname»].» «.$row[«lastname»].»

«;
> else <
echo «0 results»;
>
$conn->close();
?>

Выбор данных с помощью PDO (+ подготовленные операторы)

В следующем примере используются подготовленные операторы.

Он выбирает столбцы ID, имя и фамилия из таблицы мигуестс и отображает их в таблице HTML:

Пример (PDO)

setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$stmt = $conn->prepare(«SELECT id, firstname, lastname FROM MyGuests»);
$stmt->execute();

PHP MySQL Select Data

Select Data From a MySQL Database

The SELECT statement is used to select data from one or more tables:

or we can use the * character to select ALL columns from a table:

To learn more about SQL, please visit our SQL tutorial.

Select Data With MySQLi

The following example selects the id, firstname and lastname columns from the MyGuests table and displays it on the page:

Example (MySQLi Object-oriented)

connect_error) <
die(«Connection failed: » . $conn->connect_error);
>

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

if ($result->num_rows > 0) <
// output data of each row
while($row = $result->fetch_assoc()) <
echo «id: » . $row[«id»]. » — Name: » . $row[«firstname»]. » » . $row[«lastname»]. «
«;
>
> else <
echo «0 results»;
>
$conn->close();
?>

Code lines to explain from the example above:

First, we set up an SQL query that selects the id, firstname and lastname columns from the MyGuests table. The next line of code runs the query and puts the resulting data into a variable called $result.

Then, the function num_rows() checks if there are more than zero rows returned.

If there are more than zero rows returned, the function fetch_assoc() puts all the results into an associative array that we can loop through. The while() loop loops through the result set and outputs the data from the id, firstname and lastname columns.

The following example shows the same as the example above, in the MySQLi procedural way:

Example (MySQLi Procedural)

0) <
// output data of each row
while($row = mysqli_fetch_assoc($result)) <
echo «id: » . $row[«id»]. » — Name: » . $row[«firstname»]. » » . $row[«lastname»]. «
«;
>
> else <
echo «0 results»;
>

You can also put the result in an HTML table:

Example (MySQLi Object-oriented)

connect_error) <
die(«Connection failed: » . $conn->connect_error);
>

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

if ($result->num_rows > 0) <
echo »

«;
// output data of each row
while($row = $result->fetch_assoc()) <
echo »

«;
>
echo «

IDName
«.$row[«id»].»«.$row[«firstname»].» «.$row[«lastname»].»

«;
> else <
echo «0 results»;
>
$conn->close();
?>

Select Data With PDO (+ Prepared Statements)

The following example uses prepared statements.

It selects the id, firstname and lastname columns from the MyGuests table and displays it in an HTML table:

Example (PDO)

setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$stmt = $conn->prepare(«SELECT id, firstname, lastname FROM MyGuests»);
$stmt->execute();

Выборка данных из таблицы mysql

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

select filed_names from table_name

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

1Audi20052Volvo20013Fiat20034Ford2002

В следующем примере будет показана выборка наименований всех моделей

$connection = new mysqli(«localhost»,»root»,»»,’mybase’);
$query = «select model from auto»;
$result = $connection->query($query);
while($row = mysqli_fetch_array($result))
<
echo $row[‘model’].»
n»;
>
?>

Audi
Volvo
Fiat
Ford

Выборка данных с условиями

Для выборка данных с условием чаще всего используется ключевое слово where. В следующем примере будет показана выборка всех машин старше 2002 года.

$connection = new mysqli(«localhost»,»root»,»»,’mybase’);
$query = «select model, year from auto where year>2002»;
$result = $connection->query($query);
while($row = mysqli_fetch_array($result))
<
echo «Модель:».$row[‘model’].»
«;
echo «Год:».$row [‘year’].»
«;
>
?>

Модель:Audi
Год:2005
Модель:Fiat
Год:2003

Объединение условий осуществляется при помощи ключевого слова ADN

$connection = new mysqli(«localhost»,»root»,»»,’mybase’);
$query = «select model, year from auto where year>2002 and year query($query);
while($row = mysqli_fetch_array($result))
<
echo «Модель:».$row[‘model’].»
«;
echo «Год:».$row [‘year’].»
«;
>
?>

Также допустимо использование конструкции BETWEEN min AND max

$connection = new mysqli(«localhost»,»root»,»»,’mybase’);
$query = «select model, year from auto where year between 2002 and 2004»;
$result = $connection->query($query);
while($row = mysqli_fetch_array($result))
<
echo «Модель:».$row[‘model’].»
«;
echo «Год:».$row [‘year’].»
«;
>
?>

Модель:Fiat
Год:2003
Модель:Ford
Год:2002

Если нужно получить список записей то используется конструкция IN

$connection = new mysqli(«localhost»,»root»,»»,’mybase’);
$query = «select model, year from auto where year in (2002,2005)»;
$result = $connection->query($query);
while($row = mysqli_fetch_array($result))
<
echo «Модель:».$row[‘model’].»
«;
echo «Год:».$row [‘year’].»
«;
>
?>

Модель:Audi
Год:2005
Модель:Ford
Год:2002

Основы PHP и MySQL — Операторы выборки (SELECT), вставки (INSERT), обновления (UPDATE) и удаления (DELETE) информации из базы данных

В этой статье мы на примерах разберем такие очень важные моменты в работе с базами данных MySQL (БД), как выборка из базы данных, запись в базу данных, обновление информации в базе данных, а также ее удаление из базы данных. Все это будет производиться при помощи четырех операторов PHP – операторов SELECT, INSERT, UPDATE и DELETE о которых и пойдет речь в данной статье.

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

Как сделать выборку из базы данных. Оператор выборки SELECT

Перед тем как производить выборку из базы данных, первым делом нужно подключиться к MySQL серверу и выбрать базу данных для работы. Как вы уже знаете из предыдущей статьи рубрики «Уроки PHP и MySQL», делается это следующим образом.

После соединения с MySQL сервером и выбора базы данных можно приступить непосредственно к выборке из БД. Для примера возьмем базу данных, которую мы создавали в предыдущей статье. Напомню, что была создана база данных с именем db_name и одной таблицей first_table, в которой было всего три поля: id (идентификатор), name (имя), last_name (фамилия). Для того чтобы произвести выборку из базы данных можно использовать функцию mysql_query(), которая в данном случае имеет следующий синтаксис.

где, $db – идентификатор подключения.

Если говорить простыми словами, то данный код расшифровывается как «ВЫБРАТЬ поля (перечисляем названия через запятую) ИЗ таблицы (указываем имя таблицы БД) ГДЕ выполняется условие (прописываем условие)». Как видите синтаксис функции очень простой, а сам код похож на обычный человеческий язык.

Поскольку функция mysql_query() возвращают результат, то его нужно поместить в какую-то переменную для дальнейшего использования, например, в переменную $result.

Теперь результат выполнения функции mysql_query() хранится в переменной $result и может быть использован, например, для формирования массива и вывода результатов на экран. Более подробно об этом мы поговорим чуть позже, ну а пока перейдем к примерам. В качестве базы данных для примера будем использовать базу db_name из предыдущей статьи.

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

Звездочка означает, что нужно вытащить все поля из таблицы.

Если нужно вытащить только некоторые поля, например, имя и фамилию.

name, last_name – поля с именами и фамилиями пользователей.

Если нужно получить точные данные, например, фамилию всех пользователей в базе данных с определенным именем (имя будет занесено в переменную $name).

name=’$name’ – поле name равняется переменной $name.

Кроме одного условия мы также можем перечислить несколько, например, нужно получить идентификатор всех пользователей с определенным именем и фамилией (имя и фамилия будут занесены в переменные $name и $last_name соответственно). Для этого можем использовать следующий код.

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

Если вам нужно отсортировать результат по каким-то параметрам, например, по имени.

ORDER BY name – отсортировать по имени.

Если нужно отсортировать в обратном порядке.

DESC – в обратном порядке.

Если нужно вытащить только определенное количество полей из базы данных. К примеру, нужно вытащить первые пять полей.

LIMIT 5 – вытащить из БД только первые пять результатов.

Это были небольшие примеры выборки из базы данных. Теперь давайте рассмотрим, как преобразовать полученный результат в массив для дальнейшего использования, например, для вывода результата на экран. Для этого в PHP существует специальная функция PHP mysql_fetch_array().

Результат выполнения функции мы можем поместить в переменную, например, переменную $myrow, которая будет хранить в себе ассоциативный массив. В качестве параметра функции mysql_fetch_array() будет передан результат выполнения функции mysql_query(). Все это будет выглядеть следующим образом.

Теперь мы можем обращаться к элементам ассоциативного массива $myrow. В качестве примера давайте рассмотрим код, который выводит на экран имя пользователя с идентификатором >

Как видите все очень просто и понятно.

Ну а теперь перейдем к следующему оператору INSERT, который отвечает за добавление информации в базу данных.

Добавление информации в базу данных. Оператор INSERT

Оператор INSERT применяется для добавления информации в базу данных. Код, отвечающий за добавление, имеет следующий синтаксис.

Данный код можно было бы прочитать как «ВСТАВИТЬ В таблицу (имя таблицы) в поля (названия полей через запятую) ЗНАЧЕНИЯ (перечисляем значения через запятую)».

Например, нам нужно добавить в таблицу first_table имя и фамилию нового пользователя. Для этого можно использовать следующий код.

Где, $name и $last_name – переменные с именем и фамилией нового пользователя.

Для того чтобы проверить результат можно использовать конструкцию if – else.

Другими словами, если в переменную $result попадет истина, то выведется сообщение, что запись добавлена. В противном случае выведется, что запись в базу данных не добавлена.

Обновление информации в базе данных. Оператор UPDATE

Оператор UPDATE применяется для обновления уже существующей информации в базе данных. Синтаксис функции mysql_query в данном случае следующий.

Теперь перейдем к примеру. Допустим нам нужно изменить имя и фамилию для пользователя с идентификатором $id в таблице db_name. Для этого можно использовать следующий код.

Теперь давайте перейдем к заключительной части статьи и рассмотрим последний оператор DELETE, который отвечает за удаление информации из базы данных.

Удаление информации из базы данных. Оператор DELETE

Оператор DELETE применяется для удаления полей из базы данных. Синтаксис функции mysql_query() в данном случае следующий.

Теперь как обычно перейдем к примеру. Допустим нам нужно удалить пользователя с идентификатором $id из таблицы db_name. Для этого можно использовать следующий код.

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

На этом все. Удачи вам и успехов в изучении PHP и MySQL.

Читать еще:  Php environment variable
Ссылка на основную публикацию
Adblock
detector