|
Пишу CMS, нужна помощь!
|
| Автор |
Сообщение |
x-tor Хостинг — это наше всё!


Зарегистрирован: 19.05.2007 Сообщения: 198 Откуда: Samara 4495 
|
Добавлено: Ср, 17 Сен, 2008 12:56 Заголовок сообщения: Пишу CMS, нужна помощь! |
|
|
Пишу CMS на PHP + MySQL, есть несколько моментов, которые нужно решить...
Как сделать разделы с альтернативной ссылкой?
Я создал базы данных вида:
| Код: |
CREATE TABLE `razdel` (
`id` int(11) NOT NULL default '0',
`name` varchar(255) default NULL,
`title` text,
`description` text,
`keywords` text,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251;
|
и
| Код: |
CREATE TABLE `podrazdel` (
`id` int(11) NOT NULL,
`razdel_id` int(11) NOT NULL,
`name` varchar(255) default NULL,
`title` text,
`description` text,
`keywords` text
) ENGINE=MyISAM DEFAULT CHARSET=cp1251;
|
Сделал формы и т.д. теперь нужно сделать скрипты добавления, редактирования и удаления разделов и подразделов. _________________ RAPCorp.ru - Независимый рэп лейбл
Muzona НЕТ - Есть качественная музыка!
Кошкидома.ру - сайт о кошках |
|
| Вернуться к началу |
|
 |
Михаил Сорокин Интернет на завтрак


Зарегистрирован: 15.09.2008 Сообщения: 28 Откуда: Самара 815 
|
Добавлено: Ср, 17 Сен, 2008 13:09 Заголовок сообщения: |
|
|
На самом деле это далеко не несколько моментов
Ну, а если серьезно в чем проблемо то?
Присоздании "раздела" добавляешь запись в табличу razdel, а при создании "подраздела" в таблицу podrazdel.
Только при создании под раздела надо добавлять id раздела к которому он принадлежит. _________________ Все могут попасть в рай, самое главное во время подчистить логи (с) r57 |
|
| Вернуться к началу |
|
 |
x-tor Хостинг — это наше всё!


Зарегистрирован: 19.05.2007 Сообщения: 198 Откуда: Samara 4495 
|
|
| Вернуться к началу |
|
 |
Михаил Сорокин Интернет на завтрак


Зарегистрирован: 15.09.2008 Сообщения: 28 Откуда: Самара 815 
|
Добавлено: Ср, 17 Сен, 2008 13:18 Заголовок сообщения: |
|
|
В общем вот теория:
1. Создание радела
тут все элементарно, у тебя есть форма на которой input типа text, в которые ты вводишь данные по создаваемому разделу.
далее следует insert запрос:
| Код: | INSERT INTO `razdel` SET `name`='$name', `title`='$title', `description`='$description', `keywords`='$keywords'
|
2. Создание под раздела
тут тоже все просто, только в форму надо дабавить select c перечнем уже созданых групп.
и выполнить insert только уже к другой таблице:
| Код: | INSERT INTO `podrazdel` SET `razdel_id`='$razdel_id', `name`='$name', `title`='$title', `description`='$description', `keywords`='$keywords'
|
P.S.: Запросы проверь, т.к. по помяти писал, возможно ошибся с синтаксисом. _________________ Все могут попасть в рай, самое главное во время подчистить логи (с) r57 |
|
| Вернуться к началу |
|
 |
[LP]LordPro.teus Призрак Лорда


Зарегистрирован: 26.07.2007 Сообщения: 5092
42282 
|
Добавлено: Ср, 17 Сен, 2008 13:19 Заголовок сообщения: |
|
|
Не понимаю Пишем CMS, но не знаем синтаксиса MySQL-запроса INSERT?.. Ппц... _________________

До выхода LiteDiary 0.3.0: парам-пам-пам-пам! Она уже здесь! |
|
| Вернуться к началу |
|
 |
Михаил Сорокин Интернет на завтрак


Зарегистрирован: 15.09.2008 Сообщения: 28 Откуда: Самара 815 
|
Добавлено: Ср, 17 Сен, 2008 13:30 Заголовок сообщения: |
|
|
ну ни пипец конешно. но ему еще со многим столкнуться придется
я думаю даже тут проблема не в том что он синтаксис не знает, а в том что вообще мало представляет что пишет! _________________ Все могут попасть в рай, самое главное во время подчистить логи (с) r57 |
|
| Вернуться к началу |
|
 |
x-tor Хостинг — это наше всё!


Зарегистрирован: 19.05.2007 Сообщения: 198 Откуда: Samara 4495 
|
Добавлено: Ср, 17 Сен, 2008 13:33 Заголовок сообщения: |
|
|
Тоесть должно быть так?
| Код: |
<?
$sql = "INSERT INTO `razdel` SET `name`='$name', `title`='$title', `description`='$description', `keywords`='$keywords'"; // формируем sql запрос
mysql_query($sql);
?>
<form name="form1" action="/" method="post" ENCTYPE="multipart/form-data">
<table style="margin:0px;" border="0" align="center" width="100%" cellspacing="0" cellpadding="0" class="feedback">
<tr>
<td colspan="2"><b>Добавление разделов:</b></td>
</tr>
<tr>
<td width="166">Название:</td>
<td width="234">
<input style="width:100%" type="text" name="title" value="" size="0" />
</td>
</tr>
<tr>
<td>Описание:</td>
<td>
<input style="width:100%" type="text" name="description" value="" size="0" />
</td>
</tr>
<tr>
<td>Ключевые слова:</td>
<td>
<input style="width:100%" type="text" name="keywords" value="" size="0" />
</td>
</tr>
<tr>
<td>Выбор типа страницы:</td>
<td>
<input type="radio" name="insert" value="1"> Статическая страница
<input type="radio" name="insert" value="2"> Подключаемый модуль
</td>
</tr>
<tr>
<td>Альтернативная ссылка:</td>
<td>
<input style="width:100%" type="text" name="name" value="" size="0" />
</td>
</tr>
<tr>
<td align="center" colspan="2" style="padding-bottom: 10px;">
<input onclick="return testData()" type="submit" name="Submit" value="Добавить" class="input_submit" />
</td>
</tr>
</table>
</form>
|
_________________ RAPCorp.ru - Независимый рэп лейбл
Muzona НЕТ - Есть качественная музыка!
Кошкидома.ру - сайт о кошках |
|
| Вернуться к началу |
|
 |
Михаил Сорокин Интернет на завтрак


Зарегистрирован: 15.09.2008 Сообщения: 28 Откуда: Самара 815 
|
Добавлено: Ср, 17 Сен, 2008 13:37 Заголовок сообщения: |
|
|
почти, в этом варианте у тебя как только страница будет открываться, будет новая пустая запись добавляться... тебе же данные нужны вот их надо получить из $_POST, а затем что то типа этого:
| Код: | <?
if (($name!='') and ($title!=''0) and ...)
{
$sql = "INSERT INTO `razdel`...... и т.д
mysql_query($sql);
}
?> |
_________________ Все могут попасть в рай, самое главное во время подчистить логи (с) r57 |
|
| Вернуться к началу |
|
 |
[LP]LordPro.teus Призрак Лорда


Зарегистрирован: 26.07.2007 Сообщения: 5092
42282 
|
Добавлено: Ср, 17 Сен, 2008 13:39 Заголовок сообщения: |
|
|
Михаил Сорокин
не тратьте время попусту, ничего толкового так не пишется... ТС - зайти в доки по PHP & MySQL и читать. _________________

До выхода LiteDiary 0.3.0: парам-пам-пам-пам! Она уже здесь! |
|
| Вернуться к началу |
|
 |
Alek$ 11 1110 1000


Зарегистрирован: 24.11.2007 Сообщения: 1136 Откуда: Новосибирск 26695 
|
Добавлено: Ср, 17 Сен, 2008 13:45 Заголовок сообщения: |
|
|
x-tor
1) Юзайте шаблонизаторы. Иначе это не полноценная цмс, даже близко.
2) Если это вы показали весь код страницы, то у вас скрипт требует дырявый (sql иньекция и, скорее всего, XSS). _________________ Самая страшная ошибка - это ошибка без видимых причин и конкретных последствий.
phpBB3 [db_update.php generator]
phpBB3 [Russian]
Антисоциальный блог |
|
| Вернуться к началу |
|
 |
Михаил Сорокин Интернет на завтрак


Зарегистрирован: 15.09.2008 Сообщения: 28 Откуда: Самара 815 
|
Добавлено: Ср, 17 Сен, 2008 13:48 Заголовок сообщения: |
|
|
| Alek$ писал(а): | | 1) Юзайте шаблонизаторы. Иначе это не полноценная цмс, даже близко. |
как можно вообще говорить о полноценности CMS по шаблонизатору?
| Alek$ писал(а): | | 2) Если это вы показали весь код страницы, то у вас скрипт требует дырявый (sql иньекция и, скорее всего, XSS). |
на счет этого трудно не согласиться, хотя для его админки это не страшно, она либо для своего использования, либо для каких то имых целей, но ни как не в массы. А сам себе sql-inj делать, эт надо извращенцем быть _________________ Все могут попасть в рай, самое главное во время подчистить логи (с) r57 |
|
| Вернуться к началу |
|
 |
x-tor Хостинг — это наше всё!


Зарегистрирован: 19.05.2007 Сообщения: 198 Откуда: Samara 4495 
|
Добавлено: Ср, 17 Сен, 2008 13:50 Заголовок сообщения: |
|
|
А как сделать, чтобы ссылка имела вид примерно такой:
/admin/index.php?razdel=add
а файлы распологались в папке /admin/modules/razdel/add.php
и ещё вот index.php файл
| Код: |
<?php
// Соединяемся с базой данных
require_once("../inc/config/db.php");
require_once("../inc/config/config.php");
include('func/wysiwyg.php');
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="ru" xml:lang="ru">
<head>
<title><?=$title_admin ?></title>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<link href="/admin/inc/css/style.css" rel="stylesheet" type="text/css">
<link href="/admin/inc/css/main.css" rel="stylesheet" type="text/css">
<!-- TinyMCE -->
<script type="text/javascript" src="../func/jscripts/tiny_mce/tiny_mce.js"></script>
<script type="text/javascript">
tinyMCE.init({
mode : "textareas",
theme : "simple"
});
</script>
<!-- /TinyMCE -->
</head>
<body>
<? include('inc/header.inc.php'); ?>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr>
<td width="25%" class="zag" valign="top">
<? include('inc/navigation.inc.php'); ?>
</td>
<td class="bg_adm_center" width="1%"></td>
<td width="74%" class="zag" valign="top">
<div class="content">
<div style="padding: 10px;">
<? include('inc/content.inc.php'); ?>
</div>
</div>
</td>
</tr>
</table>
<? include('inc/footer.inc.php'); ?>
</body>
</html>
|
_________________ RAPCorp.ru - Независимый рэп лейбл
Muzona НЕТ - Есть качественная музыка!
Кошкидома.ру - сайт о кошках |
|
| Вернуться к началу |
|
 |
[LP]LordPro.teus Призрак Лорда


Зарегистрирован: 26.07.2007 Сообщения: 5092
42282 
|
Добавлено: Ср, 17 Сен, 2008 13:53 Заголовок сообщения: |
|
|
x-tor
выучить PHP.
2All, призываю всех дать человеку самому чему-то научиться... имеем второго Amethyst, однако... _________________

До выхода LiteDiary 0.3.0: парам-пам-пам-пам! Она уже здесь! |
|
| Вернуться к началу |
|
 |
Михаил Сорокин Интернет на завтрак


Зарегистрирован: 15.09.2008 Сообщения: 28 Откуда: Самара 815 
|
Добавлено: Ср, 17 Сен, 2008 13:56 Заголовок сообщения: |
|
|
| x-tor писал(а): | /admin/index.php?razdel=add
а файлы распологались в папке /admin/modules/razdel/add.php |
обычно, как правило , люди делают на оборот эт ЧПУ называется, а то что ты хочешь, эт в прямом смысле извращение...
это врятли можно сделать _________________ Все могут попасть в рай, самое главное во время подчистить логи (с) r57 |
|
| Вернуться к началу |
|
 |
Михаил Сорокин Интернет на завтрак


Зарегистрирован: 15.09.2008 Сообщения: 28 Откуда: Самара 815 
|
Добавлено: Ср, 17 Сен, 2008 13:56 Заголовок сообщения: |
|
|
| [LP]LordPro.teus писал(а): | x-tor
выучить PHP.
2All, призываю всех дать человеку самому чему-то научиться... имеем второго Amethyst, однако... |
после этих слов....  _________________ Все могут попасть в рай, самое главное во время подчистить логи (с) r57 |
|
| Вернуться к началу |
|
 |
|