|
PHP и MySQL : Добавление и вывод информации
БД - база данных, многие ещё не сталкивались с их использованием - не начинали работать с ними, так как нет опыта и навыком, но рано или поздно стоит начать их освоение и использование в своих интернет проектах в первую очередь для удобства.
Я не планирую провести целый курс по освоению баз данных с углублением во все тонкости, хочу всего лишь привести примеры, которыми вы сможете с лёгкостью воспользоваться, и если для вас это всё же будет удобнее - возможно вы поймёте, что уже пора брать в руки учебник.
Итак, я думаю, стоит начать с написания открытой новостной ленты, которая не будет содержать в себе ничего сложного или даже можно сказать "лишнего".
Для начала создадим файл с конфигурациями для подключения к нашей базе данных, в нём же и сам запрос подключения: создайте файл "config.php" и запишите следующие:
<?
$date = gmdate("Y-m-d"); # Скрипт выдачи текущей даты
# Данные для подключения
$db_host = "localhost"; # Хост БД (обычно localhost)
$db_name = "news"; # Имя базы (ту, что вы создадите (к примеру, news) хотя нам понадобится лишь 1 таблица, можно использовать любую готовую базу)
$db_user = ""; # Логин для доступа к базе
$db_pass = ""; # Пароль для доступа к базе
# Запрос подключение
mysql_connect($db_host, $db_user, $db_pass) or die ("Ошибка связи с хостом БД");
mysql_select_db ("$db_name") or die ("Ошибка связи с базой");
?>
Сохраняем. Файл конфигураций готов.
Создайте базу для размещения таблицы с новостями или используйте уже имеющуюся базу, для начала создадим запрос, который создаст таблицу с необходимыми полями, сделаем это в файле sql: создайте файл db.sql, запишите в него следующие:
CREATE TABLE news (`id` int not null primary key auto_increment, `date` date, `title` text, `desc` text);
Сохраним, закроем и импортируем данный файл с запросов в нашу базу (как это сделать лучше всего узнать из руководства для пользователей того программного решения которое вы используете).
После импорта мы имеем таблицу с необходимыми полями, и у нас уже есть файл, с конфигурациями позволяющий нам подключиться к базе. Теперь можно приступить к написанию скрипта, как пример, мы создадим файл index.php и начнём работу над скриптом.
Пишем в index.php:
<?
include "config.php"; # Подключаем файл конфигураций
if($_GET[pg]==""){
$re = mysql_query("SELECT * FROM news;") or die("Ошибка…"); # выборка
while ($row = mysql_fetch_array($re)) # цикл
{
echo "$row[date] | $row[title]<br>$row[desc]"; # Шаблон выводимой информации
}}
?>
Скрипт вывода информации из базы готов, правда, я бы советовал сделать для выводимой информации нормальный шаблон.
Хорошо, информацию из базы мы знаем, как показать - а добавить? Для добавления информации нам понадобится ещё один не сложный скрипт, открывает недавно редактировавшийся нами документ (файл index.php) и пишем (дописываем ниже) следующие:
If($_GET[pg]=="add"){
Echo "
<form method=POST action=index.php?pg=send>
<p>Заголовок: <input type=text name=title size=48></p>
<p>Текст: <textarea rows=4 name=desc cols=41></textarea></p>
<p><input type=submit value=Submit><input type=reset value=Reset></p>
</form>"; # Шаблон формы добавления информации
}
If($_GET[pg]=="send"){
mysql_query("INSERT INTO news VALUES(``, `$date`, `$_POST[title]`, `$_POST[desc]`)") or die("Ошибка…"); # Данным запросов мы записываем информацию в нашу таблицу
header("Location: index.php"); # Редирект на главную страницу сразу после добавления информации
}
Сохраняем, и готово.
Если же добавление информации должно быть закрытым - делать скрипт добавления следуем в закрытой области сайта.
|