На главную Статьи Функции

Взаимодействие PHP и MySQL (выбор значений из базы MySQL, оператор SELECT)




По умолчанию я буду считать что база данных у вас уже есть, если ее еще нет, создайте базу с именем first_base или любым другим.
Подключение к базе данных можно писать в каждом файле, или можно вынести в отдельный файл (включение которого в документ можно выполнить функцией include(‘filname.php’);), назвать его config.php (или любым другим именем, главное чтобы вам было понятно что это за файл), и записать в нем следующее:

  // Устанавливаем соединение с базой данных
  $dbserv='localhost';
  /* По умолчанию пользователь базы данных – администратор (root) 
  подключается к базе  данных без пароля, вы можете создать своего 
  пользователя с паролем для  подключения к базе данных */
  $dbuser='root';
  $dbpassword='';
  $db_connect=@mysql_connect  ($dbserv, $dbuser, $dbpassword);
  /*  Следующие четыре  строки описывают кодировки подключения */
  mysql_query("SET  haracter_set_client='cp_1251'");
  mysql_query("SET  haracter_set_results='cp_1251'");
  mysql_query("SET  collation_connection='cp_1251_general_ci'");
  mysql_query('set  names cp1251');
  //  Проверяем, успешно ли соединение
  if (!$db_connect)
  {
	exit ("В  насоящий момент сервер базы данных недоступен");
  } 
  //Выбор базы данных
  $db_name='first_base';
  $db_select=@mysql_select_db  ($db_name, $db_connect);
  if (!$db_select)
  {
	echo ('В  настоящий момент база данных недоступна, пожалуйста, повторите позже');
	exit();
  }

Создайте новую таблицу с названием “articles”, количество полей (ячеек в строке) пять:

  1. id – номер статьи (тип: smallint; уникальное, Дополнительно: auto_increment)
  2. date – дата добавления (тип: date)
  3. title – название (тип: varchar; длина(lenght) – 255 – максимальное количество символов)
  4. short_text – короткий текст, можно использовать для первой страницы сайта, чтобы заинтересовать посетителя (тип: text)
  5. full_text – текст статьи (тип: text)

Итак, таблица готова, что делать дальше. Для обращения к базе данных используется функция mysql_query(“ЗАПРОС”);

  1. Выбор строк из таблицы:

$query = mysql_query(“SELECT * FROM articles”);


(По умолчанию для запросов я буду использовать переменную $query, вы можете называть переменную любым другим именем, которое будет содержать цель запроса, например $get_articles)

Структура запроса:
Знак * означает выбор всех ячеек, если вам нужно определенные, нужно перечислить их через запятую:

$query = mysql_query(“SELECT id, date, name  FROM articles”);

Упорядочить ячейки можно оператором ORDER BY который принимает два значения: ASC (прямой, убывание) и DESC (обратный, возрастание). Допустим мы хотим выбрать из таблицы все статьи и упорядочить их по дате в порядке убывания (такая задача встречается очень часто
), запрос к базе будет выглядеть следующим образом:

$query = mysql_query(“SELECT * FROM articles  ORDER BY date ASC”);

Такой запрос вернет строки, упорядоченные по дате в порядке убывания.

  1. Выбор строки из таблицы с определенным значением ячейки:

 

$query = mysql_query(“SELECT * FROM articles WHERE  id=’1’”);

Такой запрос вернет только строку, значение id которой равно 1. При помощи оператора WHERE можно также выбирать строки с определенной датой и т.д.’

Чтобы поставить несколько условий выбора можно использовать выражение and:

$query = mysql_query("SELECT * FROM articles WHERE  id='1' and date='2010-05-20'")

(О форматах дат в PHP читайте в статье: Даты-форматы)

Если ячейки с id=1 и датой добавления date=2010-05-20 запрос вернет пустую переменную.

  1. Выбор ограниченного числа строк определяется оператором LIMIT, например, для первой страницы сайта нам нужно выбрать не все статьи, а только последние три добавленные, запрос SQL будет выглядеть следующим образом:
$query = mysql_query("SELECT * FROM articles  ORDER BY date ASC LIMIT 3");

Данный запрос вернет три строки базы MySQL с последними датами добавления.

Резюме: SQL-оператор SELECT – наверное, самый популярный оператор взаимодействия PHP и MySQL, с его помощью вы всегда можете выбрать нужные значения из базы данных, отфильтровать и упорядочить их.



© 2010-2024 При использовании материалов ссылка на сайт www.webchaynik.ru обязательна

обратная связь