· 9 years ago · Jul 03, 2017, 08:26 AM
1<?php
2class simpleCMS { //работа Ñ Ð‘Ð”
3 public $host = "localhost"; //параметр клаÑа
4 public $username = "root";
5 public $password = "";
6 public $db = 'testDB';
7
8
9 public function connectDB() { //Ñ„ÑƒÐ½ÐºÑ†Ð¸Ñ Ð¿Ð¾Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð¸Ñ Ðº Ñерверу MySQL
10 $link = mysql_connect($this->host, $this->username, $this->password); //подключаемÑÑ Ðº Ñерверу MySQL
11 if (!$link) { //проверÑем произошло ли подключение к Ñерверу
12 die('Ошибка ÑоединениÑ: ' . mysql_error()); //false, Ñ„ÑƒÐ½ÐºÑ†Ð¸Ñ Ð²Ñ‹Ð²Ð¾Ð´Ð° ошибки
13 } // закрытие уÑÐ»Ð¾Ð²Ð¸Ñ if
14 mysql_select_db($this->db) or die("Ðе могу найти БД. " . mysql_error()); //подÑоеденÑем БД
15 $this->buildDB(); //вызываем функцию ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ‹
16 return $link; //вовзращение переменной Ñ Ñодержанием функции Ð¿Ð¾Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð¸Ñ Ðº Ñерверу
17 } //закрытие функции Ð¿Ð¾Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð¸Ñ Ðº Ñерверу
18
19 public function buildDB() { //Ñ„ÑƒÐ½ÐºÑ†Ð¸Ñ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ‹ 20//переменной задаем значение ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ñ‚Ð°Ð±Ð»Ð¸Ñ†Ñ‹ "messages" c 'полÑми' их типом и Ð¼Ð°ÐºÑ Ð´Ð»Ð¸Ð½Ð½Ð¾Ð¹ Ñтроки
20 $sql = "CREATE TABLE IF NOT EXISTS `messages` (
21 `mid` int(11) NOT NULL AUTO_INCREMENT,
22 `title` varchar(150) DEFAULT NULL,
23 `body` text,
24 `created` varchar(100) DEFAULT NULL,
25 `contacts` varchar(13) NOT NULL,
26 PRIMARY KEY (`mid`)
27) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=7 ";
28 $result = mysql_query($sql);
29 return $result;
30 }
31
32 public function write($p) { //Ñ„ÑƒÐ½ÐºÑ†Ð¸Ñ Ð·Ð°Ð¿Ð¸Ñи ÑообщениÑ
33 $sql = 'INSERT INTO messages(title, body, created, contacts) VALUES("' . $p["title"] . '", "' . $p["body"] . '", ' . time() .', "'.$p["contacts"].'")'; //оператор(колонки) Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ (к каждой колонке)
34 return mysql_query($sql) or die(mysql_error());
35 }
36
37 public function display_public() { //Ñ„ÑƒÐ½ÐºÑ†Ð¸Ñ Ð²Ñ‹Ð²Ð¾Ð´Ð° Ñообщений
38 $content = '';
39 $sql = 'SELECT * FROM messages ORDER BY mid DESC'; // оператор запроÑа выборки * - выбор вÑех полей каждой Ñтроки из "messages" таблицы
40 $result = mysql_query($sql) or die(mysql_error()); //выполнение запроÑа выборки
41
42 while($row = mysql_fetch_array($result)) {
43 $content .='<table class="post">';// оборачивает запиÑÑŒ
44 $content .= '<span class="time">#' . $row['mid'] . 'от' .date('d-m-Y', $row['created']) . '</span><h2>' . $row['title'] . '</h2>'; //вывод времени и заголовка
45 $content .= '<p>' . $row['body']. '</p>'; //вывод текÑта
46 $content .= '<p>' . $row['contacts']. '</p>'; //вывод контактов
47 $content .= '<p><a href="/index.php?admin=update&mid='.$row['mid'].'">Редактировать Ñообщение</a></p>';
48 $content .= '</table>'; //Ð·Ð°ÐºÑ€Ñ‹Ð²Ð°ÑŽÑ‰Ð°Ñ Ð·Ð°Ð¿Ð¸ÑÑŒ
49 }
50 $content .= '<p><a href="/index.php?admin=add"> Добавить Ñообщение</a></p>'; //ÑÑылка на добавление ÑообщениÑ
51 return $content;
52 }
53
54 public function update($p) {
55 $message_id = $_GET['mid'];
56 if(!empty($message_id)){
57 $result = mysql_query('SELECT * FROM messages WHERE mid='.$message_id) or die(mysql_error() );
58 $sql = 'UPDATE `messages` SET `title` = "' . $p["title"] . '", `body` = "' . $p["body"] . '", `created` = ' . $p["created"] .', `contacts` = "'.$p["contacts"].'" WHERE `messages`.`mid` = "'.$p['mid'].'" ';
59 $row = mysql_fetch_object($result);
60 $form = <<<HTML
61 <form action="/index.php?admin=update" method="post">
62 <label for="title">ИмÑ:</label>
63 <input type="text" id="title" name="title" maxlength="150" value=$row->title>
64 <div></div>
65 <input type="hidden" name="mid" id="mid" value=$row->mid>
66 <label for="body">Сообщение:</label><br>
67 <textarea name="body" id="body"> $row->body </textarea><br>
68 <div></div><br>
69 <input type="submit" value="Сохранить">
70 </form>
71 <p><a href="/index.php">ВернутьÑÑ Ð½Ð° главную</a></p>
72HTML;
73 }else{
74 if (!empty($_POST)) {
75 mysql_query('UPDATE messages SET title="'.$_POST["title"].'", body="'.$_POST["body"].'" WHERE mid='.$_POST["mid"] ) or die (mysql_error());
76 $form .= '<p>Сообщение изменено!';
77 $form .= '<p><a href="/index.php#mid-'.$_POST['mid'].'">Перейти к запиÑи</a></p>';
78 }else{
79 $form .= '<p>Ðет Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ mid!</p>';
80 $form .= '<p><a href="/index.php">ВернутьÑÑ Ð½Ð° главную</a></p>';
81 }
82 }
83 return $form;
84}
85
86}
87
88$obj = new simpleCMS; //Ñоздание обьекта клаÑа
89$db_connection = $obj->connectDB(); //назначение переменной вызова функции Ð¿Ð¾Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð¸Ñ Ðº Ñерверу (к БД)
90$item = array("title" => "заголовок", "body" => "текÑÑ‚", "contacts" => "номер"); //назначение переменной функции маÑÑива Ñ (ключами-названий Ð¿Ð¾Ð»Ñ Ð¸ => их значений)
91echo $obj->write($item); //вызов функци запиÑи Ñообщений через маÑÑива
92$p = array( "mid" =>"2", "title" => "привет котÑ", "body" => "как дела?", "created" => time(), "contacts" => "номер");
93echo $obj->update($p);
94echo $obj->display_public();
95mysql_close($db_connection); // закрытие подÑÐ¾ÐµÐ´ÐµÐ½ÐµÐ½Ð¸Ñ Ðº БД
96?>