Разработка скриптов управления сайтом: работа со страницами.
Создание интерфейсов добавления, изменения и удаления страниц сайта.
Создание общего интерфейса административной части работы со страницами.
Страницы
'; return $out; } function show_table(){ GLOBAL $GLOBAL_TABLE,$dbpf; $out = ''; $sql = 'SELECT * FROM '.$dbpf.'_'.$GLOBAL_TABLE.' ORDER BY id DESC'; $qur = mysql_query($sql); $kol = mysql_num_rows($qur); $out .= ''; return $out; } include ("foot.php"); ?>По аналогии файла menu.php построен и файл pages.php за исключением некоторых изменений. Изменили рабочую таблицу и файл
if (isset($_GET['des'])){ if ($_GET['des'] == 'edit') echo edit_table($_GET['id']); if ($_GET['des'] == 'add') echo edit_table(); }else{ if (isset($_POST['edit'])) { $id = $_POST['id']; $id_menu = $_POST['id_menu']; $name = addslashes($_POST['name']); $text_f = addslashes($_POST['text_f']); $data_c = mktime(date('H'),date('i'),0,date('m'),date('d'),date('Y')); $sql = 'UPDATE '.$dbpf.'_'.$GLOBAL_TABLE.' SET name="'.$name.'",id_menu='.$id_menu.',text_f="'.$text_f.'",data_c='.$data_c.' WHERE id = '.$id.'';Добавили несколько строк для обработки полей текста, даты и пункта меню.
$qur = mysql_query($sql); if ($qur) echo 'Страница успешно изменена.'; else echo 'Страница не изменена. Ошибка БД.'; } if (isset($_POST['add'])) { $id_menu = $_POST['id_menu']; $name = addslashes($_POST['name']); $text_f = addslashes($_POST['text_f']); $data_c = mktime(date('H'),date('i'),0,date('m'),date('d'),date('Y')); $sql = 'INSERT INTO '.$dbpf.'_'.$GLOBAL_TABLE.' VALUE (0,"'.$name.'","'.$text_f.'",'.$data_c.','.$id_menu.')';Добавили несколько строк для обработки полей текста, даты и пункта меню.
$qur = mysql_query($sql); if ($qur) echo 'Страница успешно добавлена.'; else echo 'Страница не добавлена. Ошибка БД.'; } if (isset($_POST['edit_group'])){ if (isset($_POST['del'])){ foreach ($_POST['del'] as $key => $val){ $sql = 'DELETE FROM '.$dbpf.'_'.$GLOBAL_TABLE.' WHERE id='.$key.''; $qur = mysql_query($sql); } } } echo show_table(); }Новая функция для определения и вывода объекта выбора пункта меню. Входной параметр номер пункта меню для отображения какой пункт меню выбран для страницы.
function get_menu_sel($id=0){ GLOBAL $GLOBAL_TABLE,$dbpf; $out = ''; $sql = 'SELECT * FROM '.$dbpf.'_menu ORDER BY id DESC'; $qur = mysql_query($sql); $kol = mysql_num_rows($qur); $out .= 'Свойство SELECTED отвечает за выбранный пункт меню, здесь мы сравниваем переданный параметр в функцию с текущим номером пунтка меню.
else $out .= ''; } } $out .= ''; return $out; }Новая функция для отображения пункта меню в общей таблице, если такой не найден тогда выводится сообщение Раздел не определен.
function get_menu($id=0){ GLOBAL $GLOBAL_TABLE,$dbpf; $out = ''; $sql = 'SELECT * FROM '.$dbpf.'_menu WHERE id ='.$id.''; $qur = mysql_query($sql); $kol = mysql_num_rows($qur); if ($qur&&$kol){ $rez = mysql_fetch_array($qur); $out .= stripslashes($rez['name']); }else $out .= 'Раздел не определен.'; return $out; } function edit_table($id=0){ GLOBAL $GLOBAL_TABLE,$GLOBAL_FILE,$dbpf; $out = ''; if ($id){ $sql = 'SELECT * FROM '.$dbpf.'_'.$GLOBAL_TABLE.' WHERE id = '.$id.''; $qur = mysql_query($sql); $rez = mysql_fetch_assoc($qur); $regim = 'Редактирование страницы'; $button = ''; }else{ $rez['id'] = 0; $rez['name'] = ''; $regim = 'Добавление страницы'; $button = ''; } $out .= '
Результат работы скрипта в браузере.
Вывод всех записей таблицы
Добавление страницы