Разработка сайта с использованием PHP программирования
Назначение информационно-новостного сайта. Структура пользовательской и административной частей. Эмулятор Web–сервера Denwer 3. Типы данных, используемые в PHP. MySQL база данных. Каскадная таблица стилей CSS. Язык гипертекстовой разметки документов HTML.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | дипломная работа |
Язык | русский |
Дата добавления | 05.02.2013 |
Размер файла | 2,0 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
if (mysql_fetch_array(mysql_query("SELECT login FROM user WHERE login='$_POST[login]'"))) { // проверяем нет ли такого логина в базе
echo "<br>Даный логин уже используется другим пользователем";
$n=$n+1; }
if (mysql_fetch_array(mysql_query("SELECT email FROM user WHERE email='$_POST[email]'"))) { // проверяем нет ли такого email адреса в базе
echo "<br>Даный email уже используется другим пользователем";
$n=$n+1; }
if ($n==0) { // выполняем если все условия выше соблюдены
$result01 = mysql_query("INSERT INTO user (name, login, password, email, vopros, otvet, access) VALUES ('$_POST[name]','$_POST[login]','$_POST[password]','$_POST[email]','$_POST[vopros]','$_POST[otvet]','$_POST[access]')",$db); // заносим данные пользователя в БД
echo "Пользователь успешно добавлен!";}}
else { echo" <form action='add_user.php' method='post'>
<label><p class=name_form>Имя:<br></label><input name='name' type='text' size='50'></p>
<label><p class=name_form>Логин:<br></label><input name='login' type='text' size='50'></p>
<label><p class=name_form>Пароль:<br></label><input name='password' type='text' size='50'></p>
<label><p class=name_form>Email:<br></label><input name='email' type='text' size='50'></p>
<label><p class=name_form>Секретный вопрос:<br></label><textarea name='vopros' cols='40' rows='3'></textarea></p>
<label><p class=name_form>Ответ на секретный вопрос:<br></label><input name='otvet' type='text' size='50'></p>
<label><p class=name_form>Разрешить доступ в админку?</label><input name='access' type='checkbox' value='1'></p>
<p><input name='sb_add_user' type='submit' value='Добавить пользователя'></p>
</form>"; } ?>
</div> </td></tr><tr>
<? include ("blocks/footer.php") ?> <!--подключаем нижнюю часть сайта футер-->
</tr></table></body></html>
Файл add_news.php
<? include ("blocks/bd.php"); // подключаемся к базе данных
include ("blocks/cookie.php"); ?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html><head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<link href="style.css" rel="stylesheet" type="text/css"></head><body>
<table id=table_shab border="1"><tr>
<? include ("blocks/header.php"); ?> <!--подключаем верхний блок сайта-->
</tr><tr>
<? include ("blocks/lefttd.php") ?> <!--подключаем левую часть сайта-->
<td id=#content_td><div id=content_div >
<?
if (isset($_POST['sb'])) // если нажата кнопка делаем это
{ if (isset($_POST['cat'])) {$cat = $_POST['cat'];}
if (isset($_POST['author'])) {$author = $_POST['author'];}
if (isset($_POST['title'])) {$title = $_POST['title'];}
if (isset($_POST['description'])) {$description = $_POST['description'];}
if (isset($_POST['text'])) {$text = $_POST['text'];}
if (isset($_POST['sb'])) {$sb = $_POST['sb'];}
if(empty($cat) or empty($author) or empty($title) or empty($description) or empty($text)) {exit("<p>Вы ввели не всё информацию, вернитесь назад и заполните все поля <input name='back' type='button' value='Вернуться назад' onclick='javascript:self.back()'></p>");} // проверяем заполнены ли все поля
$cat = mysql_query("SELECT id FROM cat WHERE name_cat='$cat'",$db); // считываем идентификатор категории по названию категории
$cat = mysql_fetch_array($cat);
$cat = $cat['id'];
$date = date('Y-m-d'); // заносим в переменную текущую дату
$view="0"; // счетчику просмотров присваиваем значение 0
$update = mysql_query("INSERT INTO post (cat,description,text,view,author,date,title) VALUES ('$cat','$description','$text','$view','$author','$date','$title')",$db); // заносим данные в базу
if(preg_match_all("~<div class=img_content><img src=(img/[0-9]{6}/[0-9]{1,}_.*)></div>~", "$text",$adres_img)) { // если в новости есть картинки то заносит их адреса в базу с id новости
for ($i=0; $i<count($adres_img[1]); $i++) { // цикл выполняется пока в масиве есть данные тоесть адреса картинок
$adres = $adres_img[1][$i];
$post_v = mysql_query("SELECT id FROM post WHERE text='$text'"); // извлекаем id только что добавленой или обновленой новости
$post = mysql_fetch_array($post_v);
$post = $post['id'];
$img = mysql_query("UPDATE post_img SET post='$post' WHERE adres_img='$adres'"); // в таблице с картинками подставляем к картинке id новости
} }
echo "<p class=uspeh>Новость успешно добавлена</p>";}
else {
$cat_v = mysql_query("SELECT name_cat FROM cat",$db); // считываем названия всех категорий
$cat = mysql_fetch_array($cat_v);
echo "<form action='add_news.php' method='post'> <p class=name_form><label>Категория:</label><br> <select name='cat'>";
do { echo "<option>$cat[name_cat]</option>"; } while($cat = mysql_fetch_array($cat_v)); // выводим в цикле названия категорий в теге option
echo "</select></p>
<p class=name_form><label>Автор:</label><br><input name='author' type='text' size='30' maxlength='30'></p>
<p class=name_form><label>Заголовок:</label><br><input name='title' type='text' size='50' maxlength='150'></p>
<p class=name_form><label>Краткое содержание новости: <bolt class=upload_img><a href='add_img.php' target='_blank'>Загрузить изображение</a></bolt></label><br><textarea name='description' cols='70' rows='5'></textarea></p>
<p class=name_form><label>Полная новость: <bolt class=upload_img><a href='add_img.php' target='_blank'>Загрузить изображение</a></bolt></label><br><textarea name='text' cols='70' rows='15'></textarea></p>
<p class=name_form><input name='sb' type='submit' value='Добавить новость'></p>
</form>"; } ?>
</td></tr><tr>
<? include ("blocks/footer.php") ?> <!--подключаем нижнюю часть сайта футер-->
</tr></table></body></html>
Файл add_img.php
<? include ("blocks/bd.php");
include ("blocks/cookie.php");?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<link href="style.css" rel="stylesheet" type="text/css">
</head><body><table id=table_shab border="1"><tr>
<? include ("blocks/header.php"); ?> <!--подключаем верхний блок сайта-->
</tr><tr>
<? include ("blocks/lefttd.php") ?> <!--подключаем левую часть сайта-->
<td id=#content_td> <div id=content_div >
<?php
$date = date(ymd); // гнерируем название будущей папки
if (!(is_dir('../img/'.$date))) { // проверяем не создана ли такая папка
mkdir('../img/'.$date,0755); // создаём папку в директории img
}
?>
<form enctype="multipart/form-data" action="add_img.php" method="post">
<label><p class=name_form>Размер изображения не должен превышать 5мб</label><br>
<input type="hidden" name="MAX_FILE_SIZE" value="6000000">
<input type="file" name="uploadFile"/>
<input type="submit" name="upload" value="Загрузить"/></p> </form>
<? if(isset($_POST['upload'])){ // проверяем былали нажата кнопка
$ran = rand(0,100000); // генерируем случайное число
$img_post = 'img/'.$date.'/'.$ran.'_'.basename($_FILES['uploadFile']['name']); // генерируем адрес для картинки в новости
$img_post2 = '../'.$img_post; // генерируем адрес для загрузки на сервер
move_uploaded_file($_FILES['uploadFile']['tmp_name'],$img_post2); // переносим файл на сервере в указаную директорию
$result = mysql_query("INSERT INTO post_img (adres_img) VALUES ('$img_post')",$db); // записываем адрес картинки в бд
echo "<img src='../$img_post2' height=100px ><br>Ссылка на изображение: <br><input name='img' type='text' value='<div class=img_content><img src=$img_post></div>' size='100'"; // выводим картинку и ниже ссылку на эту картинку
}
?>
</td></tr><tr>
<? include ("blocks/footer.php") ?> <!--подключаем нижнюю часть сайта футер-->
</tr></table></body></html>
Файл add_cat.php
<? include ("blocks/bd.php"); // подключаемся к базе данных
include ("blocks/cookie.php"); ?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html><head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<link href="style.css" rel="stylesheet" type="text/css">
</head><body><table id=table_shab border="1"><tr>
<? include ("blocks/header.php"); ?> <!--подключаем верхний блок сайта-->
</tr><tr>
<? include ("blocks/lefttd.php") ?> <!--подключаем левую часть сайта-->
<td id=#content_td><div id=content_div >
<? if(isset($_POST['sb_add_cat'])) {
if (isset($_POST['name_cat'])) {$name_cat = $_POST['name_cat'];}
if (isset($_POST['text_cat'])) {$text_cat = $_POST['text_cat'];}
$sb_add_cat = $_POST['sb_add_cat'];
if(empty($name_cat)) {exit("<p>Вы не ввели название категории, вернитесь назад и сделайте это. <input name='back' type='button' value='Вернуться назад' onclick='javascript:self.back()'></p>");} // проверяем заполнены ли все поля
$update = mysql_query("INSERT INTO cat (name_cat,text_cat) VALUES ('$name_cat','$text_cat')",$db); // заносим данные в базу
echo "<p class=uspeh>Категория добавлена успешно</p>"; }
else { echo" <form action='add_cat.php' method='post'>
<label><p class=name_form>Имя новой категории:<br></label><input name='name_cat' type='text' size='50'></p>
<label><p class=name_form>Текст на странице с категорией (не обязательно):<br></label><textarea name='text_cat' cols='50' rows='5'></textarea></p>
<p><input name='sb_add_cat' type='submit' value='Добавить категорию'></p>
</form>"; } ?>
</div> </td></tr><tr>
<? include ("blocks/footer.php") ?> <!--подключаем нижнюю часть сайта футер-->
</tr></table></body></html>
Файл index.php
<? header ("Location: add_news.php");
include ("blocks/cookie.php"); ?>
Файл lefttd.php
<td id=lefttd> <p id=meny_name>Новости</p> <p id=meny_ssilki><a href=add_news.php>Добавить</a></p> <p id=meny_ssilki><a href=edit_news.php>Редактировать</a></p> <p id=meny_name>Категории</p> <p id=meny_ssilki><a href=add_cat.php>Добавить</a></p> <p id=meny_ssilki><a href=edit_cat.php>Редактировать</a></p> <p id=meny_name>Комментарии</p> <p id=meny_ssilki><a href=edit_comments.php>Редактировать</a></p> <p id=meny_name>Пользователи</p> <p id=meny_ssilki><a href=add_user.php>Добавить</a></p> <p id=meny_ssilki><a href=edit_user.php>Редактировать</a></p> </td>
Файл header.php
<td height="100" colspan="2"><img src="header.jpg" width="1000" height="100"></td>
Файл footer.php
<td height="20" colspan="2"> </td>
Файл cookie.php
<? if(isset($_COOKIE['session'])) { $user_c = mysql_fetch_array(mysql_query("SELECT access FROM user WHERE cookie='$_COOKIE[session]'"));
if ($user_c['access']!=1) { exit("У вас нет прав для посещения данной страницы"); }
} else { exit("У вас нет прав для посещения данной страницы"); } ?>
Файл bd.php
<? $db = mysql_connect ("localhost","diplom","diplom");
mysql_select_db ("diplom",$db);
mysql_query("SET NAMES cp1251"); ?>
Файл style.css
body { /*фон первый слой*/
background-color:#009900;
}
#table_shab { /*таблица дизайна*/
width:1000px;
border-collapse: collapse; /*делает рамку таблицы тонкой*/
background-color:#CCCCCC; /*фон таблицы первый слой*/
margin: auto; /*выравниваем таблиц по центру*/
}
#lefttd { /*ячейка таблицы с навигацией*/
background-color:#33CC66; /*фон ячейки с навигацией*/
vertical-align: top;
width:200px;
}
#content_td { /*ячейка таблицы с котентом*/
vertical-align:top;
}
#content_div { /*содержимое ячейки с контентом*/
font-family:Verdana, Arial, Helvetica, sans-serif;
margin:30px;
}
#content_div p { /*параграф в контенте*/
line-height:24px;
}
.uspeh { /*Надписи об успешных добавлениях и обновлениях*/
font-size:19px;
color:#666666;
font-weight:bold;
margin-top:10px;
}
.name_form { /*Надписи над формами*/
font-weight:bold;
font-size:12px;
}
.upload_img { /*Ссылка на загрузку изображения*/
font-size:10px;
}
.upload_img a { /*Ссылка на загрузку изображения? свойства ссылки*/
color:#990000;
}
#verh_zag { /*Параграф в самом верху страниц*/
font-size:18px;
font-weight:bold;
}
.p_str_news { /*параграф о новости с категорией, названием, ссылкой на редактирование, ссылкой для удаление новости*/
}
.str_news_cat { /*Текст Категория*/
font-size:14px;
font-weight:bold;
}
.str_news_name_cat { /*Название категории*/
font-size:14px;
}
.str_news_title { /*Название новости ссылка*/
font-size:12px;
}
.p_str_cat { /*Параграф с категориями которые выводятся в цикле, с название ссылкой на редакртирование и удаление*/
}
str_cat_title {
font-size:13px;
}
.str_delete { /*Ссылка на удаление работает как для новостей так и для категорий*/
font-size:9px;
}
.str_delete a { /*Ссылка на удаление работает как для новостей тк и для категорий только свойства ссылки*/
color:#990000;
}
#meny { /*пункты меню ссылки*/
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size:14px;
font-weight:100;
color:#666666;
text-indent:20px;
line-height:15px;
letter-spacing:2px;
text-transform:none;
}
#meny_name { /*заголовок категорий*/
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size:18px;
font-weight:bold;
color:#DBCD0A;
text-align:auto;
background-color:#DB0800;
margin-top:10px;
margin-bottom:10px;
}
#meny_ssilki { /*заголовок категорий*/
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size:14px;
font-weight:bold;
color:#666666;
text-align:left
background-color:#3C27DB;
margin-top:5px;
margin-bottom:5px;
margin-left:20px;
}
#meny a { /*ссылки в меню*/
color:#0000FF;
text-decoration:none;
}
#comment_author_date {
font-size:12px;
margin-top:0px;
margin-bottom:0px;
}
#comment_content {
margin:40px;
border-width:0px;
border-style:solid;
border-color:#000000;
background-color:#DCDCDC;
margin-top:2px;
margin-bottom:25px;
}
.author_email_text { line-height:4px; margin-bottom:0px; margin-top:2px; }
.com_red { text-align:right; }
Размещено на Allbest.ru
Подобные документы
Назначение и требования к сайту. Структура пользовательской и административной части. Эмулятор Web-сервера Denwer, каскадная таблица стилей CSS. Логическая структура Web-приложения. Расчет трудоемкости разработки программного продукта, калькуляция затрат.
дипломная работа [2,1 M], добавлен 29.01.2013Основы Web-программирования. Сервер баз данных MySQL. Язык сценариев PHP. Язык гипертекстовой разметки HTML. Назначение и цели разработки сайта. Форма входа и регистрации, обратная связь интернет–магазина. Требования к структуре сайта, описание контента.
курсовая работа [754,5 K], добавлен 02.06.2014Создание индивидуального сайта с использованием языка гипертекстовой разметки HTML и языка скриптов JavaScript. Программные средства, используемые при выполнении работы. Основные средства для создания сайта. Разработка CSS-файла (таблица стилей).
лабораторная работа [31,0 K], добавлен 28.10.2010Создание сайта при помощи HTML и CSS. Язык гипертекстовой разметки HTML и таблица стилей CSS. Основные понятия об этих языках, этапы и алгоритмы программного обеспечения. Добавление стилей в документ. Свойства элементов, принцип построения Web-страницы.
курсовая работа [2,9 M], добавлен 12.01.2016Понятие сайта и их классификация - корпоративные, презентационные, тематические, интернет-магазины. Язык гипертекстовой разметки HTML и его средства разработки. Виртуальный web-сервер Denver и MySQL базы. Этапы разработки сайта и структура навигации.
дипломная работа [2,4 M], добавлен 13.01.2015Классификация компьютерных сетей. Схема подключения к Интернету, каналы передачи и приема информации. Разработка сайта с использованием скриптового языка программирования PHP и базы данных MySQL (база данных о квартирах, предназначенных для продажи).
контрольная работа [3,6 M], добавлен 09.05.2012Отличительные особенности языков программирования PHP и CSS. Возможности компактного многопоточного сервера баз данных MySQL. Системный анализ предметной области, проектирование ее инфологической модели. Создание базы данных и web-страниц сайта магазина.
курсовая работа [1,0 M], добавлен 15.01.2013Создание тематического Web-сайта с использованием гипертекстового языка разметки HTML, каскадных листов стилей CSS и языка программирования Java Script. Описание используемых тегов при его создании. Особенности разработки навигации и интерфейса сайта.
контрольная работа [2,8 M], добавлен 02.12.2009Разработка веб-сайта "Салон сотовой связи", деятельностью которого является продажа телефонов и прочих сопутствующих услуг и продуктов. Горизонтальное выравнивание объектов. Работа с языком гипертекстовой разметки HTML и каскадными таблицами стилей CSS.
курсовая работа [32,6 K], добавлен 24.06.2013Изучение технологий HTML, CSS, языка программирования PHP и методов работы с СУБД MySQL. Разработка сайта "Органайзер", позволяющего добавлять события на конкретную дату, просматривать, изменять и удалять их. Применение каскадной таблицы стилей CSS.
курсовая работа [894,2 K], добавлен 22.07.2017