Задайте вопрос
Поиск по сайту

Содержание:

Глава1 - Основы.

  • Установка и настройка Denwer.
  • Знакомство с РНР.
  • Переменные.
  • Операторы.
  • Массивы и циклы
  • Функции.

  • Глава2 - Разработка web-сайтов и взаимодействие с MySql.
    Partner




    И так, как с помощью php нам общаться с базой данных?



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

    Давайте сразу же закроем соединение с базой, а уж потом будем делать все остальное



    Теперь выберем базу с которой хотим работать с помощью следующей функции (предположим, что у нас база называется "base")



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




    mysql_errno() выведет номер ошибки если таковые были, а mysql_error() описание самой ошибки.

    Теперь посылаем запрос. Те запросы, что ничего не возвращают, например INSERT, DELETE или, к примеру, вот такой запрос который устанавливает кодировку Windows-1251: mysql_query("SET NAMES 'cp1251'");
    все их можно посылать просто функцией mysql_query();.

    А вот если мы делаем выборку значений (нам что-то возвращается), то естественно мы кладем это в переменную.

    Ну например:



    Для удобства отслеживания будущих неизбежных ошибок рекомендую Вам сам запрос закидывать в какую-то переменную, а потом ее уже подставлять, поверьте, это избавит от проблем, когда запросы будут такие, что не будут помещаться на страницу



    Есть один ньюанс - теперь в $result у нас лежит выборка из базы в виде таблицы, но нечитаемой для нас. Вообщем если вывести эту переменную вардампом, то увидим фразу, что, мол, тут лежит значение типа "ресурс" базы данных mysql, и все. Что бы нам теперь переконвертировать это в массив и потом брать от туда значения, используем функцию:



    В таком виде как я ее написал, нам вернется массив и ассоциативный и нумерованный - задвоится, т.е. напрмер была ячейка name и в массиве будет и name со значением, и нумерованная ячейка 1 (если name была первой) с тем же значением. Но можно выводить либо тот, либо тот массив по желанию. Сделать это можно либо подставив вторым параметром в функцию выше константу, либо, использовав альтернативные функции



    Вообщем то основные шаги работы с базой, все остальное можно считать вспомогательным :-)

    Вот еще некоторые вспомогательные функции:



    Пример можно посмотреть здесь. Только попробуйте сами решить, а уж потом ответ смотреть :)

    Наверх Предыдущая страница Следующая страница