Content

Контакты


* Ваше имя:
Введите реальное имя, чтобы мы знали как к вам обращаться


* Ваш E-mail:
Введите реальный e-mail адрес, на него вы получите ответ на ваше сообщение


* Тема сообщения:


* Сообщение:

Спасибо за Ваше сообщение!

Будем рады, если Вы станете нашими клиентами!

ДАТЬ БЕСПЛАТНОЕ ОБЪЯВЛЕНИЕ  | ВОЙТИ  |


 
ЗНАКОВСТВО С PHP
 
 
  • Часть I - теория
  • Часть II - теория
  • Часть III - практика
  • Словарь PHP
  • Символы HTM
  •  
     


     

     
    УСЛУГИ
     
       
     

    Выборка из БД на примере простой таблицы. Основы работы

    Что мы можем делать с базой данных? Посмотрим из предложенной схемы:

    1. Производить выборку из БД - оператор SELECT (ВЫБОРКА). Можем выбрать определенные поля по определенным данным (в нашем примере - сотрудникам. см. урок предыдущий): имена сотрудников, фамилии, должности или всю таблицу. Оператор SELECT (ВЫБОРКА) - самый частый запрос, который будем использовать.

    2. Можем вставлять в базу новую информацию при помощи оператора INSERT - ВСТАВКА. Когда в уже существующую таблицу, например таблицу firstbd, можем вставить нового сотрудника прямо из PHP -файла.

    3. Можем изменять информацию в таблице. Оператор - UPDATE (изменить любое поле в таблице).

    4. Удалять ту или иную информацию. Оператор - DELETE.

    база данных

    ЗАЙМЕМСЯ ВЫБОРКОЙ ИЗ БАЗЫ.

    У нас есть все исходные данные для дальнейшей работы: создавать PHP - файл (PHP-код), при помощи которого будем соединяться с базой данных и делать выборку из таблицы.

    Вот этот код: Примечание: код пароля в целях безопасности указан не верно - введите свой пароль для доступа к MySQL.
    <?
    $db = mysql_connect("u79183.mysql.masterhost.ru", "u79183", "000000000000");
    mysql_select_db("u79183_firstbd", $db);
    ?>

    ЗАДАЧА: ВЫВЕСТИ НА ЭКРАН ВСЕХ СОТРУДНИКОВ ФИРМЫ.

    Напишем код:

    <?
    $db = mysql_connect("u79183.mysql.masterhost.ru", "u79183", "000000000000");
    mysql_select_db("u79183_firstbd", $db);
    $result = mysql_query ('SELECT * FROM firma', $db);
    $myrow = mysql_fetch_array ($result);
    echo $myrow ["name"];
    ?>

    Код выведет:

    Алексей

    Комментарии: рассмотрим ещу раз наш код.

    <? - начало выполнения php-скрипта
    $db = mysql_connect("u79183.mysql.masterhost.ru", "u79183", "000000000000"); - соединение с хостом и базой данных
    mysql_select_db("u79183_firstbd", $db); - соединение с нашей таблицей firstbd
    $result = mysql_query ('SELECT * FROM firma', $db); - выводит всех сорудников на экран с помощью функции mysql_query (строка запроса). То есть, сам запрос формируется в круглых скобках, где находится параметр SELECT * FROM firma - все сотрудники фирмы (* - означает все поля, все сотрудники фирмы). По -сути, написали, выбрать все поля. Откуда - FROM. Из таблицы - firma. $db - идентификатор нашего соединения.
    Выбрать все поля из таблицы firma.
    Запрос вернет нам результат и его надо поместить в переменную $result. При таком коде функция выполняется и в переменную $result попадает таблица firma (4 поля нашей таблицы и все сотрудники). Но эта таблица попадает в виде "неосязаемой" матрицы, с которой напрямую работать нельзя, так как сотрудников (и полей) может быть тысячи. Придумали специальный способ, который позволяет вытаскивать из этой таблицы определенные поля нашей таблицы. Это функция будет следующей, то есть mysql_fetch_array, в которую помещается параметр $result и всё это помещается в переменную $myrow.

    $myrow = mysql_fetch_array ($result); - - Эта функция вытаскивает из результата первую запись, как массив - array. И этот массив помещается в переменную $myrow. Что получилось? Посмотрим на схеме:
    база данных
    Мы прописали:
    $result = mysql_query ('SELECT * FROM firma');
    где SELECT * FROM firma - все поля из таблицы firma. То есть, вся таблица попала в $result в виде матрицы. Из этой матрицы надо вытащить данные. Для этого мы написали функцию $myrow = mysql_fetch_array ($result), где параметр этой функции сама матрица-таблица ($result). И скажем, что бы нам поместили в первый ряд самую первую запись - первое поле id=1, то есть запись с данными Алексей Алексеев Директор как массив (вспомним ассоциативные массивы). На данный момент в $myrow у нас находится массив из первой записи - Алексей Алексеев Директор. Таким образом, обратившись к любому индексу мы можем вытащить эту информацию.

    echo $myrow ["name"]; - - выводит из поля d=1, (где оператор name как элемент массива - имя) Алексей. То есть, здесь в $myrow поместился массив из первой записи.
    ?>
    - конец скрипта.

    Примечание: Если в скрипте в операторе ["name"] поменять на ["dol"] - выведет должность Директор (можно поэксперимертировать).

    Теперь попробуем вытащить не все поля, а только поле lastname - выведет фамилию Алексеев.
    Напишем код:
    <? - начало выполнения php-скрипта
    $db = mysql_connect("u79183.mysql.masterhost.ru", "u79183", "000000000000");
    mysql_select_db("u79183_firstbd", $db);
    $result = mysql_query ('SELECT lastname FROM firma', $db);
    $myrow = mysql_fetch_array ($result);
    echo $myrow ["lastname"];
    ?>
    - конец скрипта

    Алексеев
    Как выводить определенные записи? Например:
    <? - начало выполнения php-скрипта
    $db = mysql_connect("u79183.mysql.masterhost.ru", "u79183", "000000000000");
    mysql_select_db("u79183_firstbd", $db);
    $result = mysql_query ("SELECT dol FROM firma WHERE id='2' ", $db);
    $myrow = mysql_fetch_array ($result);
    echo $myrow ["dol"];
    ?>
    - конец скрипта

    Код выведет должность в поле id=2, то есть Заместитель.
    Заместитель.
    Для того, что бы отображались записи правильно, необходимо настроить полe id
    Для Алексея id=1
    Для Ивана id=2
    Для Александра id=3
    Войти в панель phpmyadmin и произвести необходимые изменения - смотри ниже рисунки: база данных
    база данных

  • Следующий урок: выборка из БД в цикле

  • (>> далее...) Все уроки

  • Ваша корзина:



    Ваша корзина пуста!



    Всего: 0руб.


     
    НЕДВИЖИМОСТЬ
     
       
     

     
    НОВОСТИ
     
       
     


     

     

    ГЛАВНАЯ  | КОНТАКТЫ  |
    Copyright В© 2013 | Создание и продвижение сайтов