Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Интернет » Web-программирование » PHP ошибка плагина TDE Website Editor для Driamweaver

Модерирует : Cheery

 Версия для печати • ПодписатьсяДобавить в закладки

Открыть новую тему     Написать ответ в эту тему

berkut9737



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Плагин для визуального редактирования контента не требующий баз данных MySql.  
ссылка на страницу http://www.topdreamweaverextensions.com/website-editor
При вставке кода, типа:

Код:
<?php  
    require_once("./TDE_CMS/cmsloader.php");  
    TDE_CMS_LoadTitle("'somenews");
?>
 
<?php  
    require_once("./TDE_CMS/cmsloader.php");  
    TDE_CMS_LoadContent("somenews");
?>

Позволяет из админ-панели вставлять, редактировать и удалять информацию в этом месте.
 
Есть возможность сделать страницу динамической и вот инструкция с сайта.
 

Цитата:
Как показать содержимое динамически
 
Примечание: эта функция не является обязательным, он предназначен для пользователей, которые хотят, чтобы воспользоваться всем спектром возможностей TDE Сайт редактора.
 
Хотя это расширение предназначено для редактирования областей в уже существующих страниц, через небольшое изменение кода, который вы можете использовать его для создания динамической страницы , что означает: страницы, которые могут показать различное содержание в зависимости от установленных параметров.
 
Пример: предположим, что у нас есть страница под названием "news.php". Когда вы вставляете TDE редактор сайта на странице соответствующей содержанию Идентификатор "somenews", код, подобный следующему будут автоматически включены в указанном пространстве:
 
<?php  
    require_once("./TDE_CMS/cmsloader.php");  
    TDE_CMS_LoadTitle("'somenews");
?>
 
<?php  
    require_once("./TDE_CMS/cmsloader.php");  
    TDE_CMS_LoadContent("somenews");
?>
Чтобы показать, различное содержание на той же странице, просто замените "somenews" по $ _GET ['Новости'] , например:
 
<?php  
    require_once('./TDE_CMS/cmsloader.php');  
    TDE_CMS_LoadTitle($_GET['news']);
?>
 
<?php  
    require_once('./TDE_CMS/cmsloader.php');  
    TDE_CMS_LoadContent($_GET['news']);
?>
После этого вы сможете показать различное содержание там только путем вызова страницы следующим образом: (пример):
 
http://your-web-site/news.php?news=news1
http://your-web-site/news.php?news=news2
http://your-web-site/news.php?news=hotnews
В этом случае "news1" , "news2" и "HotNews" будет "идентификаторы содержимого" с соответствующими содержанию добавляемые редактировать и панели администратора.
 

Всё это работает прекрасно, но проблема в том, что при вставке куска кода
 

Код:
<?php  
    require_once('./TDE_CMS/cmsloader.php');  
    TDE_CMS_LoadTitle($_GET['news']);
?>
 
<?php  
    require_once('./TDE_CMS/cmsloader.php');  
    TDE_CMS_LoadContent($_GET['news']);
?>

на странице появляется ошибка  

Цитата:
TDE_CMS Warning: The Content ID is not related to any content in the database, please check that there is a content with the ID ''

 
Вот как это выглядит на скриншоте:
 

 
А это код cmsloader.php  

Код:
<?php
 
define ('CMS_CHARSET', ''); // Example: iso-8859-1, utf-8, ...
 
error_reporting(7);
$dname1 = dirname(__FILE__)."/database/";
$dname2 = $_SERVER["DOCUMENT_ROOT"]."/TDE_CMS/database/";
 
if (file_exists($dname1))
    define ('DATABASE_FOLDER', $dname1);
else if (file_exists($dname2))
    define ('DATABASE_FOLDER', $dname2);
else
    define ('DATABASE_FOLDER', './TDE_CMS/database/');
 
 
function TDE_CMS_LoadContent($contentId)
{
    $path = DATABASE_FOLDER."content_".base64_encode($contentId);
    if (!file_exists($path))
        echo "TDE_CMS Warning: The Content ID is not related to any content in the database, please check that there is a content with the ID '".$contentID."'";
    else
    {
        $file = file($path);
        echo base64_decode(trim($file[1]));
    }
}
 
function TDE_CMS_LoadTitle($contentId)
{
    $path = DATABASE_FOLDER."content_".base64_encode($contentId);
    if (!file_exists($path))
        echo "TDE_CMS Warning: The Content ID is not related to any content in the database, please check that there is a content with the ID '".$contentID."'";
    else
    {
        $file = file($path);
        echo base64_decode(trim($file[0]));
    }
}
 
if ($_GET["content_id"] != '')
{
    if (CMS_CHARSET != '')
        header ('Content-type: text/html; charset='.CMS_CHARSET.';');
    if ($_GET["action"] == 'get_tde_content')
        TDE_CMS_LoadContent($_GET["content_id"]);
    else if ($_GET["action"] == 'get_tde_title')
        TDE_CMS_LoadTitle($_GET["content_id"]);
}
 
?>

Простите, за многословие, но иначе никак не получалось объяснить проблему. Спасибо.

Всего записей: 1140 | Зарегистр. 05-04-2009 | Отправлено: 13:17 21-08-2013 | Исправлено: berkut9737, 13:29 21-08-2013
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
berkut9737

Цитата:
TDE_CMS Warning: The Content ID is not related to any content in the database, please check that there is a content with the ID ''

когда вы ничего не передаете в запросе в виде ?news=идентификатор
то $_GET['news'] неопределен (ну или пуст, смотря как посмотреть на это).
Поэтому скрипт и не знает, какой блок вы хотите редактировать, так как в базе нет записи с пустыми идентификатором.
 
вообще то надо проверять, что $_GET['news'] сущестует и не пустой..
такое же сообщение может выбать если он есть и не пустой, но для него нет записи в БД

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 18:53 21-08-2013
berkut9737



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Cheery

Цитата:
когда вы ничего не передаете в запросе в виде ?news=идентификатор  
то $_GET['news'] неопределен (ну или пуст, смотря как посмотреть на это).  
Поэтому скрипт и не знает, какой блок вы хотите редактировать, так как в базе нет записи с пустыми идентификатором.  
 
вообще то надо проверять, что $_GET['news'] сущестует и не пустой..  
такое же сообщение может выбать если он есть и не пустой, но для него нет записи в БД

Надо добавить вот это:

Код:
<?php
 
if ($_GET['index'] == '') $_GET ['index'] = 'news1';
 
?>
 

Всего записей: 1140 | Зарегистр. 05-04-2009 | Отправлено: 19:03 21-08-2013 | Исправлено: berkut9737, 19:04 21-08-2013
Открыть новую тему     Написать ответ в эту тему

Компьютерный форум Ru.Board » Интернет » Web-программирование » PHP ошибка плагина TDE Website Editor для Driamweaver


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru