Лекции     Книги     Рефераты    
Диплом, курсовая на заказ

Учимся работать с MySQL

news date Авг.19.2008    categories Web-программирование > PHP+mySQL    comments (3)

Ну что же, раз со SQL–запросами мы познакомились, то самое время научиться использовать MySQL в PHP.

Для использования MySQL Вам будут нужны следующие данные: название хоста, базы, имя пользователя и пароль.

Название базы, имя пользователя и пароль Вам сообщит хостер, а название хоста в подавляющем большинстве является “localhost”.

Для начала познакомимся с функциями PHP для работы с MySQL, а потом напишем простую программу, которая создаст таблицу с данными, введёт в нее пару строчек и выведет её.

mysql_connect ($host, $user, $pass) — функция для подключения к MySQL. $host, $user и $pass — название хоста, имя пользователя и пароль соответственно. Функция возвращает объект подключения, который используется в дальнейшем, так что для полключения используется строчка примерно такого вида:

$connect = mysql_connect ($host, $user, $pass)

mysql_select_db ($base, $connect) — функция для выбора конкретной базы для использования. $base — название базы, а $connect — объект подключения.

mysql_query ($sql_query) — функция для выполнения SQL–запроса над базой данных. При использовании запроса выбора данных (SELECT) возвращает результат запроса для последующей обработки. Используется примерно так:

$q = mysql_query ($sql_query);

mysql_fetch_array ($query) — функция, возвращающая массив одной из полученных записей в результате SQL–запроса. В этом массиве ключами являются названия колонок, а значения являются значениями в конкретном полученном ряду таблицы.

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

while ($r = mysql_fetch_array ($q))
{
// здесь инструкции по выводу или иному использованию
// результатов запроса
// $r ['column1'] возвращает значение на пересечении
// данного ряда и колонки column1
}

mysql_close ($connect) – закрывает подключение к серверу MySQL.

Ну а теперь напишем обещанную простенькую программу по использованию MySQL.

<?php
// настройки подключения
$host = “localhost”; // хост
$user = “root”; // пользователь
$pass = “”; // пароль
$base = “test”; // название базы

$connect = mysql_connect ($host, $user, $pass); // устанавливаем подключение
mysql_select_db ($base, $connect); // выбираем используемую базу данных

mysql_query (“CREATE TABLE users (id INT (11) NOT NULL AUTO_INCREMENT, name VARCHAR (30) NOT NULL, PRIMARY KEY (id));”); // создаём таблицу

mysql_query (“INSERT INTO users (name) VALUES (‘Admin’);”); // вносим в таблицу несколько записей (рядов)
mysql_query (“INSERT INTO users (name) VALUES (‘Supermoderator’);”);
mysql_query (“INSERT INTO users (name) VALUES (‘Moderator1′);”);
mysql_query (“INSERT INTO users (name) VALUES (‘Moderator2′);”);

$q = mysql_query (“SELECT * FROM users”); // запрашиваем все данные таблицы users

// и выводим их в виде таблицы
echo “<table>\r\n;”;
while ($r = mysql_fetch_array ($q))
{
echo “<tr><td>” . $r ['id'] . “</td><td>” . $r ['name'] . “</td></tr>\r\n”;
}
echo “</table>”;
?>

Надеюсь, эта статья сподвигнет Вас на дальнейшее изучение MySQL, что будет (Вам) только на руку. Мой совет — чаще старайтесь использовать полученные знания на практике, и тогда через некоторое время Вы научитесь создавать высокоэффективные web–приложения с использованием MySQL.


Обсуждения

3 комментариев к “Учимся работать с MySQL”
  1. garlic пишет:

    Надо только обратить внимание, что в реальных приложениях доступ к базе должен происходить от непривилегированного пользователя (не root’а) с минимальными необхомимыми привилегиями, а какждый запрос надо проверять – лучше сразу приобрести хорошую привычку, чем потом долго избавляться от плохой.

  2. ssllav пишет:

    а вот это что?
    $q – ?
    и вот это echo \r\n;”;
    да и про точки с запятыми, и скобками там тоже как-то правильно надо ставить?

  3. Евгений пишет:

    Хочу ещё добавить, что в новых версиях MySQL запрос по типу:

    mysql_query (“INSERT INTO users (name) VALUES (‘Admin’);”); // вносим в таблицу несколько записей (рядов)

    не прокатит. Нужно писать названия таблиц и полей, заключая их в косые ковычки ` (имею ввиду ту ковычку, которая на клавише “Ё”) и значения VALUES в одинарные. То есть так:

    mysql_query (“INSERT INTO `users` (`name`) VALUES (‘Admin’);”); // вносим в таблицу несколько записей (рядов)

    К этому тоже лучше сразу привыкать.

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

Вы должны войти



© 2009 - 2010 | Webteach.ru | Образовательный портал