Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- class simpleCMS { //работа с БД
- public $host = "localhost"; //параметр класа
- public $username = "root";
- public $password = "";
- public $db = 'testDB';
- public function connectDB() { //функция подключения к серверу MySQL
- $link = mysql_connect($this->host, $this->username, $this->password); //подключаемся к серверу MySQL
- if (!$link) { //проверяем произошло ли подключение к серверу
- die('Ошибка соединения: ' . mysql_error()); //false, функция вывода ошибки
- } // закрытие условия if
- mysql_select_db($this->db) or die("Не могу найти БД. " . mysql_error()); //подсоеденяем БД
- $this->buildDB(); //вызываем функцию создания таблицы
- return $link; //вовзращение переменной с содержанием функции подключения к серверу
- } //закрытие функции подключения к серверу
- public function buildDB() { //функция создания таблицы 20//переменной задаем значение создания таблицы "messages" c 'полями' их типом и макс длинной строки
- $sql = "CREATE TABLE IF NOT EXISTS `messages` (
- `mid` int(11) NOT NULL AUTO_INCREMENT,
- `title` varchar(150) DEFAULT NULL,
- `body` text,
- `created` varchar(100) DEFAULT NULL,
- `contacts` varchar(13) NOT NULL,
- PRIMARY KEY (`mid`)
- ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=7 ";
- $result = mysql_query($sql);
- return $result;
- }
- public function write($p) { //функция записи сообщения
- $sql = 'INSERT INTO messages(title, body, created, contacts) VALUES("' . $p["title"] . '", "' . $p["body"] . '", ' . time() .', "'.$p["contacts"].'")'; //оператор(колонки) значения (к каждой колонке)
- return mysql_query($sql) or die(mysql_error());
- }
- public function display_public() { //функция вывода сообщений
- $content = '';
- $sql = 'SELECT * FROM messages ORDER BY mid DESC'; // оператор запроса выборки * - выбор всех полей каждой строки из "messages" таблицы
- $result = mysql_query($sql) or die(mysql_error()); //выполнение запроса выборки
- while($row = mysql_fetch_array($result)) {
- $content .='<table class="post">';// оборачивает запись
- $content .= '<span class="time">#' . $row['mid'] . 'от' .date('d-m-Y', $row['created']) . '</span><h2>' . $row['title'] . '</h2>'; //вывод времени и заголовка
- $content .= '<p>' . $row['body']. '</p>'; //вывод текста
- $content .= '<p>' . $row['contacts']. '</p>'; //вывод контактов
- $content .= '<p><a href="/index.php?admin=update&mid='.$row['mid'].'">Редактировать сообщение</a></p>';
- $content .= '</table>'; //закрывающая запись
- }
- $content .= '<p><a href="/index.php?admin=add"> Добавить сообщение</a></p>'; //ссылка на добавление сообщения
- return $content;
- }
- public function update($p) {
- $message_id = $_GET['mid'];
- if(!empty($message_id)){
- $result = mysql_query('SELECT * FROM messages WHERE mid='.$message_id) or die(mysql_error() );
- $sql = 'UPDATE `messages` SET `title` = "' . $p["title"] . '", `body` = "' . $p["body"] . '", `created` = ' . $p["created"] .', `contacts` = "'.$p["contacts"].'" WHERE `messages`.`mid` = "'.$p['mid'].'" ';
- $row = mysql_fetch_object($result);
- $form = <<<HTML
- <form action="/index.php?admin=update" method="post">
- <label for="title">Имя:</label>
- <input type="text" id="title" name="title" maxlength="150" value=$row->title>
- <div></div>
- <input type="hidden" name="mid" id="mid" value=$row->mid>
- <label for="body">Сообщение:</label><br>
- <textarea name="body" id="body"> $row->body </textarea><br>
- <div></div><br>
- <input type="submit" value="Сохранить">
- </form>
- <p><a href="/index.php">Вернуться на главную</a></p>
- HTML;
- }else{
- if (!empty($_POST)) {
- mysql_query('UPDATE messages SET title="'.$_POST["title"].'", body="'.$_POST["body"].'" WHERE mid='.$_POST["mid"] ) or die (mysql_error());
- $form .= '<p>Сообщение изменено!';
- $form .= '<p><a href="/index.php#mid-'.$_POST['mid'].'">Перейти к записи</a></p>';
- }else{
- $form .= '<p>Нет значения mid!</p>';
- $form .= '<p><a href="/index.php">Вернуться на главную</a></p>';
- }
- }
- return $form;
- }
- }
- $obj = new simpleCMS; //создание обьекта класа
- $db_connection = $obj->connectDB(); //назначение переменной вызова функции подключения к серверу (к БД)
- $item = array("title" => "заголовок", "body" => "текст", "contacts" => "номер"); //назначение переменной функции массива с (ключами-названий поля и => их значений)
- echo $obj->write($item); //вызов функци записи сообщений через массива
- $p = array( "mid" =>"2", "title" => "привет котя", "body" => "как дела?", "created" => time(), "contacts" => "номер");
- echo $obj->update($p);
- echo $obj->display_public();
- mysql_close($db_connection); // закрытие подсоеденения к БД
- ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement