1. Джордж Шлосснейгл. Профессиональное программирование на PHP, 2006
2. Уильям Стейнмец, Брайан Вард. 75 готовых решений для вашего web-сайта на РНР, 2009
3. Мишель Е. Дэвис и Джон А. Филипс. Изучаем PHP и MySQL, 2008
4. Николай Прохоренок. HTML, JavaScript, PHP и MySQL. Джентельменский набор Web-мастера, 2010
5. Тим Конверс, Джойс Парк и Кларк Морган. PHP 5 и MySQL. Библия пользователя, 2006
ПРИЛОЖЕНИЕ
form_del.php
<style>
.radio
{
padding: 15px;
position: absolute;
left: 15px;
top: 45px;
width: 150px;
height: 300px;
}
.radio1
{
padding: 13px;
left: 30px;
}
.text
{
padding: 15px;
position: absolute;
left: 200px;
top: 45px;
width: 180px;
}
</style>
<b><i><h1> Удаление новости</h1></b></i>
<form name="r1" action="del.php" method=POST>
<div class="radio">
<i>Критерии удаления</i><br>
<input type=radio name = "delete" value="1">ID<br>
<input type=radio name = "delete" value="2">Автор<br>
<input type=radio name = "delete" value="3">Дата
<div class="radio1">
<input type=radio name = "date" value="1">Год<br>
<input type=radio name = "date" value="2">Месяц<br>
<input type=radio name = "date" value="2">Число<br>
</div>
<br>
<input type=submit name="del" value="Удалить">
</div>
<div class="text">
<i>Значение</i><br><br>
<input type=text name="del_value">
</div>
</form>
main.php
<style>
a{
text-decoration: none;
}
</style>
<?php
if (isset($_POST['autor']))
{
if ($_POST['login'] == "" | $_POST['password'] == "")
{
exit("Введите имя и пароль <a href=autor.php>Назад</a>");
}
if ($_POST['login'] == "admin" and $_POST['password'] == "123456")
{
echo '<a href="reg.php?name=1">Добавить новость</a>'." ";
echo '<a href="reg.php?name=2">Удалить новость</a>'." ";
echo '<a href="reg.php?name=3">XML - шаблон</a>'.'<br>';
}
}
$host='localhost'; // имя хоста
$database='news'; // имя базы данных
$user='root'; // заданное вами имя пользователя
|
//$pswd='123456789'; // пароль
$dbh = mysql_connect($host, $user) or die("Не могу соединиться с MySQL.");
mysql_select_db($database) or die("Не могу подключиться к базе.");
$query = "SELECT * FROM news";
$res = mysql_query($query);
while($row = mysql_fetch_array($res))
{
echo "Номер: ".$row['id']."<br>\n";
echo "Заголовок статьи: ".$row['header']."<br>\n";
echo "Текст статьи: ".$row['text']."<br>\n";
echo "Автор статьи: ".$row['autor']."<br>\n";
echo "Дата публикации: ".$row['date']."<br>\n";
echo "Метки: ".$row['labels']."<br><hr>\n";
}
mysql_close($dbh);
?>
reg.php
<?php
if ($_GET['name'] == 1)
{ header("location: form_add.php");
}
if ($_GET['name'] == 2)
{ header("location: form_del.php");
}
if ($_GET['name'] == 3)
{ header("location: xml.php");
}
?>
xml.php
<?php
$RSSLenta="
<?xml version='1.0' encoding='utf-8'?>
<rss version='2.0'>
<channel>
<title>Новости Испанской Примеры</title>
<link>https://sprimera.gixx.ru</link>
<description>Последние новости чемпионата Испании</description>
<language>ru-ru</language>
<webMaster>sprimeragixx@gmail.com</webMaster>";
$host='localhost'; // имя хоста (уточняется у провайдера)
$database='news'; // имя базы данных, которую вы должны создать
$user='root'; // заданное вами имя пользователя, либо определенное провайдером
$dbh = mysql_connect($host, $user) or die("Не могу соединиться с MySQL.");
mysql_select_db($database) or die("Не могу подключиться к базе.");
$query = "SELECT * FROM news ORDER BY id DESC LIMIT 0,10";
$res = mysql_query($query);
while($row = mysql_fetch_array($res))
{
$id = $row['id'];
$header = $row['header'];
$text = $row['text'];
$autor = $row['autor'];
$date = $row['date'];
$date=date("D, j M Y G:i:s", strtotime(".$date."))." GMT";
$labels = $row['labels'];
$RSSLenta.= "
<item>
<title>.$header.</title>
<link>https://sprimera.gixx.ru/news/articles.$id.</link>
<description>.$text.</description>
<pubDate>.$date.</pubDate>
|
<author>.$autor.</author>
</item>";
}
$RSSLenta.="
</channel>
</rss>";
$file="rss.xml";
$fp = fopen($file, "w+"); // "w" - создать новый файл или затереть текущий
fwrite($fp,$RSSLenta);
fclose($fp);
mysql_close($dbh);
echo 'XML файл успешно создан <a href="autor.php">На главную</a>';
?>
add.php
<?php
if (isset($_POST['add']))
{
if ($_POST['header'] == "" | $_POST['text'] == "" | $_POST['autor'] == "" | $_POST['labels'] == "")
{
exit("Заполните все поля! <a href=form_add.php>Назад</a>");
}
$host='localhost'; // имя хоста (уточняется у провайдера)
$database='news'; // имя базы данных, которую вы должны создать
$user='root'; // заданное вами имя пользователя, либо определенное провайдером
//$pswd='your_pass'; // заданный вами пароль
//$id = mysql_insert_id()+2;
$header = $_POST['header'];
$text = $_POST['text'];
$date = date("Y-m-d H:i:s"); //формат даты в datetime
$autor = $_POST['autor'];
$labels = $_POST['labels'];
$dbh = mysql_connect($host, $user, $pswd) or die("Не могу соединиться с MySQL.");
mysql_select_db($database) or die("Не могу подключиться к базе.");
$query = 'INSERT INTO news (header, text, autor, date, labels) VALUES ("'.$header.'", "'.$text.'", "'.$autor.'", "'.$date.'", "'.$labels.'")';
$res = mysql_query($query);
if ($res == TRUE)
{
echo "Данные успешно добавлены <a href=autor.php>На главную</a>";
}
else
{
echo mysql_error();
}
mysql_close($dbh);
}
?>
autor.php
<h3><b><i>Авторизация на сайте</i></b></h3>
<form action=main.php method=POST>
Логин*: <input type=text name="login"><br>
Пароль: <input type=password name="password"><br><br>
<input type=submit name="autor" value="Войти">
</form>
<h5><i>*Если вы обычный пользователь, то введите логин - user и любой пароль</i></h5>
del.php
<?php
if (!(isset($_POST['delete'])) | $_POST['del_value'] == "")
{
exit("Неверно выбраны параметры поиска <a href=form_del.php>Назад</a>");
|
}
if(isset($_POST['delete']))
{
$host='localhost'; // имя хоста
$database='news'; // имя базы данных
$user='root'; // заданное вами имя пользователя
$dbh = mysql_connect($host, $user) or die("Не могу соединиться с MySQL.");
mysql_select_db($database) or die("Не могу подключиться к базе.");
switch($_POST['delete'])
{
case '1':
if (preg_match('/\d+/', $_POST['del_value']) == 1)
{
$query = 'DELETE FROM news WHERE id="'.$_POST['del_value'].'"';
$res = mysql_query($query);
if ($res == TRUE)
{
echo "Данные удалены успешно <a href=autor.php>На главную</a>";
}
}
else
{
echo "Данные для удаления неверны <a href=form_del.php>Назад</a>";
}
break;
case '2':
$query = 'DELETE FROM news WHERE autor="'.$_POST['del_value'].'"';
$res = mysql_query($query);
if ($res == 1)
{
echo "Данные удалены успешно <a href=autor.php>На главную</a>";
}
break;
case '3':
if (!(isset($_POST['date'])))
{
echo "Данные для удаления неверны <a href=form_del.php>Назад</a>";
}
if (isset($_POST['date']))
{
switch($_POST['date'])
{
case '1':
if (preg_match('/\d{4}/', $_POST['del_value']) == 1 and $_POST['del_value'] <= 2014)
{
$var1 = $_POST[del_value]."-00-00 00:00:00";
$var2 = $_POST[del_value]."-12-31 23:59:59";
$query = 'DELETE FROM news WHERE date BETWEEN "'.$var1.'" AND "'.$var2.'"';
$res = mysql_query($query);
echo "Данные удалены успешно <a href=autor.php>На главную</a>";
}
else
{
echo "Данные для удаления неверны <a href=form_del.php>Назад</a>";
}
break;
case '2':
if (preg_match('/\d{2}/', $_POST['del_value']) == 1 and $_POST['del_value'] <= 12 and $_POST['del_value'] >= 1)
{
$var1 = "0000-".$_POST[del_value]."-00 00:00:00";
$var2 = "2014-".$_POST[del_value]."-31 23:59:59";
$query = 'DELETE FROM news WHERE date BETWEEN "'.$var1.'" AND "'.$var2.'"';
$res = mysql_query($query);
echo "Данные удалены успешно <a href=autor.php>На главную</a>";
}
else
{
echo "Данные для удаления неверны <a href=form_del.php>Назад</a>";
}
break;
case '3':
if (preg_match('/\d{2}/', $_POST['del_value']) == 1 and $_POST['del_value'] <= 31 and $_POST['del_value'] >= 1)
{
$var1 = "0000-00-".$_POST[del_value]." 00:00:00";
$var2 = "2014-12-".$_POST[del_value]." 23:59:59";
$query = 'DELETE FROM news WHERE date BETWEEN "'.$var1.'" AND "'.$var2.'"';
$res = mysql_query($query);
echo "Данные удалены успешно <a href=autor.php>На главную</a>";
}
else
{
echo "Данные для удаления неверны <a href=form_del.php>Назад</a>";
}
break;
}
}
break;
}
}
mysql_close($dbh);
?>
form_add.php
<form action="add.php" method=POST>
<b><i><h1>Добавление новости: </h1></b></i>
Заголовок новости: <input type=text name="header"><br><br>
<div style="position:absolute left: 0px top: 20px">Содержание новости: </div><textarea style="resize: none" cols="80" rows="15" name="text">
Введите описание новости</textarea></div><br><br>
Автор новости: <input type=text name="autor"><br><br>
Метки: <input type=text name="labels"><br><br>
<input type=submit name="add" value="Добавить">
</form>
rss.xml
<?xml version='1.0' encoding='utf-8'?>
<rss version='2.0'>
<channel>
<title>Новости Испанской Примеры</title>
<link>https://sprimera.gixx.ru</link>
<description>Последние новости чемпионата Испании</description>
<language>ru-ru</language>
<webMaster>sprimeragixx@gmail.com</webMaster>
<item>
<title>.3.</title>
<link>https://sprimera.gixx.ru/news/articles.3.</link>
<description>.Введите описание новости.</description>
<pubDate>.Tue, 18 Mar 2014 10:14:03 GMT.</pubDate>
<author>.admin.</author>
</item>
<item>
<title>.апвкекве.</title>
<link>https://sprimera.gixx.ru/news/articles.2.</link>
<description>.Введите описание нововапвапаапвсти.</description>
<pubDate>.Tue, 11 Mar 2014 12:07:51 GMT.</pubDate>
<author>.user.</author>
</item>
</channel>
</rss>