Уважаемые читатели сайта Ajaxs.ru

Очень рад что вы зашли на мой сайт. Надеюсь, Вы сможете найти здесь для себя полезную информацию. Зарегистрировавшись на сайте вы получаете ряд преимуществ:
1. При комментировании Вам не нужно вводить имя и капчу с картинки
2. Вы можете получать уведомления на Email к интерисующим вас урокам
3. Вы можете редактировать свои комментарии

Вход на сайт


Забыли пароль



Восстановление пароля


Войти на сайт

Зарегистрироваться

Главная / Основы MySQL / Просмотр урока

     

Создание сайтов


Вам нужен небольшой сайт или просто хотите доработать уже существующий? | Подробнее

Подключение к базе MySQL и вывод данных на экран

Чтобы начать работу с базой данных необходимо выполнить подключение к ней. Для подключения к MySQL требуется в начале документа прописать следующие строки:

<?php
$db = mysql_connect("localhost","user","password");
mysql_select_db("example",$db);
?>

В дальнейшем на всех страницах, на которых мы будем работать с базами данных, будем считать, что эти строки прописаны. У нас в базе уже есть записи и нам надо вывести их на экран. Чтобы вывести всю таблицу целиком нужно сделать запрос без всяких условий:

<?php
$resultat = mysql_query("SELECT * FROM spisok",$db);

$array = mysql_fetch_array($resultat);
echo "Имя: ".$array['name']."<br>Возраст: ".$array['age']."<br>Пол: ".$array['sex']."<br><br>";

$array = mysql_fetch_array($resultat);
echo "Имя: ".$array['name']."<br>Возраст: ".$array['age']."<br>Пол: ".$array['sex']."<br><br>";

$array = mysql_fetch_array($resultat);
echo "Имя: ".$array['name']."<br>Возраст: ".$array['age']."<br>Пол: ".$array['sex']."<br><br>";
?>

Теперь попробую объяснить, что здесь происходит. Мы сделали запрос к базе данных, который вытащил всю таблицу в виде массива, и занесли в переменную $resultat. (SELECT - выбрать * - все поля FROM - из spisok - таблица из которой берутся записи). Ну чтобы мы могли обратиться к любому из полей, нужно воспользоваться функцией mysql_fetch_array, которая из массива всей таблицы выбирает только первую запись тоже в виде массива и результат помещается в переменную $array. И теперь мы можем обратиться к данным в виде этой переменной с индексом нужного поля. Чтобы вытащить из базы вторую строку, нужно снова обратиться к функции mysql_fetch_array и т.д. Результатом этого скрипта будет вывод на экран трех первых записей. Но такую форму записи некогда не используют, для этого применяют циклы:

<?php
$resultat = mysql_query("SELECT * FROM spisok",$db);
$array = mysql_fetch_array($resultat);
do
{
echo "Имя: ".$array['name']."<br>Возраст: ".$array['age']."<br>Пол: ".$array['sex']."<br><br>";
}
while($array = mysql_fetch_array($resultat));
?>

В этом примере мы сделали запрос к базе и в переменную $array занесли первую запись таблицы. С помощью функции echo вывели первую запись. В условия цикла мы снова обращаемся к функции mysql_fetch_array, котроя вытаскивает вторую запись, а поскольку условие выполняется (в базе еще имеются записи), цикл повторяется. Происходит это до тех пор пока в таблице не закончатся записи.

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

<?php
$resultat = mysql_query("SELECT * FROM spisok WHERE id='3'",$db);
//Выберем все поля из таблицы spisok, где id равно 3
$array = mysql_fetch_array($resultat);
echo "Имя: ".$array['name']."<br>Возраст: ".$array['age']."<br>Пол: ".$array['sex'];
?>

В этом случае из базы будет выбрана только та строка, у которой id равно 3. Для этого нам и нужно поле id.

Чтобы мы могли вывести на экран какое-то конкретное поле мы должны сделать запрос к базе так же с условием, но в место звездочки указать те поля, которые нам потребуются:

<?php
$resultat = mysql_query("SELECT name FROM spisok WHERE id='3'",$db);
//Выберем поле name из таблицы spisok, где id равно 3 (это Марина)
$array = mysql_fetch_array($resultat);
echo $array['name'];
?>

В переменную$resultat попадает массив, в котором содержатся все поля name из таблицы spisok у которых id равно 3.

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

<?php
$resultat = mysql_query("SELECT name,age FROM spisok WHERE id='3'",$db);
$array = mysql_fetch_array($resultat);
?>

Такой способ рекомендуется использовать, если нам не нужны все данные из таблицы. Он значительно может уменьшает нагрузку на сервер, если столбцов в таблице очень много.

Автор: Евгений Бочкарев Урок добавлен: 1 Февраля 2010 15:20 Просмотров: 60605

Условия копирования материалов сайта

Все комментарии

Посмотреть предыдущие комментарии (50)

#51 Konstantin 16-05-2013 в 15:10
Спасибо за статью. Исправьте тег <br> на <br />
#52 Александр 02-06-2013 в 13:43
Подскажите новичку!
У меня имеется: <td><a href="hotel.php>

<img src="images/hotel.gif" alt=" "></a></td>
и нормально работает. Я решил пойти дальше и перейти на базу данных phpMyAdmin.
Создал базу данных, изменил команду на: <td ><a href="hotel.php?id=8">
<img src="images/hotel.gif" alt=" "></a></td>
Подскажите как сделать, чтобы выводились записи из базы данных по указанным Id, если в каждой команде они у меня разные. Заранее благодарен


#53 Иван 06-06-2013 в 15:34
Спасибо за статью
#54 slavacomb 15-06-2013 в 22:37
Здравствуйте подскажите как вытащить фото на сайт? Есть база данных называется она vizitka есть таблица в базе данных называется photos есть колонка называется img ни как не могу добиться что бы все фото показывались на сайте вернее вообше ни одно фото не показывается
#55 qiwi 02-12-2013 в 07:33
Вот такой вопрос ) а как вынести из бд изображение которое в поле blob ? ))
заранее спасибо )
#56 Евгений 02-12-2013 в 16:13
В базе хранится только имя файла изображения в отдельном поле как правило (например, image). Соответственyо при выводе нужно просто подставить это имя:

<img src="/images/<?php echo $array['image']; ?>">


#57 cupoma58 22-07-2014 в 11:58
"...в начале документа прописать..." - какого документа, название у него есть?
#58 магомед 04-03-2016 в 16:13
всем привет ребят нужна помошь,замучаюсь почти неделя целыми днями ковыряюсь в инете ни как не могу найти от а до я как подключиться к базе данных и как создать простенький блок для коментариев типа такой как сдесь даже еще проще помогите пожалуйста как че делать напишите в контакте https://vk.com/id177272148 или почту m.m.a.1990@mail.ru
#59 biper 10-06-2016 в 11:04
есть поле формы ad_headline, заполняемое пользователем при размещении на сайте объявления. Данные этого поля попадают в базу данных ybiper_info (каждое объявление имеет уникальный id) и хранятся в таблице x742k_adsmanager_ads в столбце ad_headline,

Нужно будет выводить данные из этого поля в формируемое для отправки менеджеру по электронной почте уведомление, т. е. получится сообщение типа "размещено новое объявление, в поле ad_headline указано: ****** " Уведомление создается компонентом в php, которого я не знаю.. :( что нужно сделать.. как сформировать строку запроса чтобы вытащить данные этого поля в "{ad_headline}"=>????????



//обращаюсь к базе данных
<? php $db = mysql_connect ("localhost","user","password");
mysql_select_db("ybiper_info",$db); ?>,

//ищу нужные значения
$result = mysql_query ("SELECT 'ad_headline' FROM 'x742k_adsmanager_ads' ",$db)
//
//формирую окончательный вид запроса
"{ad_headline}"=>$result



так ли все делаю ?

#60 Александр 29-11-2016 в 13:53
Здравствуйте.
Нужна помощь. Есть задача. На портале необходима реализация двух функционалов:
1. Внесение информации из таблицы на странице порталав базу данных.
2. Поиск нужной информации в базе данных и вывод ее в таблицу.

Какова стоимость данной работы и срок исполнения?

alex0012@mail.ru
Добавить новый комментарий

Автор:

Текст сообщения:

Если в комментарии присутствует код, пожалуйста вставляете его между тегами [code][/code]

cap

Код с картинки:


Получать уведомления о новых комментариях по Email могут только зарегистрированные пользователи.

41001346159934
R314489888859
Уроки
Для начинающих
Интересное
Файлы
Полезное
Опрос

Много ли среди программистов девушек?

Последние комментарии
Ссылки