Danneo CMS v0.5.5. Устраняем ошибку при совпадении ЧПУ

Danneo CMS v0.5.5. Устраняем ошибку при совпадении ЧПУ

Danneo CMS v0.5.5. Устраняем ошибку при совпадении ЧПУ

» » Сообщение:

Danneo CMS v0.5.5. Устраняем ошибку при совпадении ЧПУ

При добавлении, если автоматически генерируемая ЧПУ совпадает с существующей, выдается ошибка..
В принципе, ничего страшного - руками изменяем и сохраняем .. но как-то не очень ..

Я сделал так:

Открыть:

Код: Выделить всё Развернуть
apanel/music.php

Найти (блок: Добавить файл (сохранение)):

php Код: Выделить всё Развернуть
$inq $db->query("SELECT musicid FROM ".$basepref."_music WHERE cpu = '".$db->escape($cpu)."'");
                       if (
$db->numrows($inq) > 0) {
                           
$tm->globalstart();
                           
this_menu();
                           
$tm->globalerror($lang['cpu_error_isset']);
                           
$tm->globalend(); 

Заменить на:

php Код: Выделить всё Развернуть
$inq $db->query("SELECT musicid FROM ".$basepref."_music WHERE cpu = '".$db->escape($cpu)."'");
                       if (
$db->numrows($inq) > 0) {
                           
$inq $db->query("SELECT musicid FROM ".$basepref."_music ORDER BY musicid DESC LIMIT 1");
                           
$inq $db->fetchrow($inq);
                           
$cpu = ($inq['musicid']+1).'-'.$db->escape($cpu); 

..

Найти ниже (блок: Редактировать файл (сохранение)):

php Код: Выделить всё Развернуть
$inq $db->query("SELECT musicid FROM ".$basepref."_music WHERE cpu = '".$db->escape($cpu)."'  AND musicid <> '".$musicid."'");
                       if (
$db->numrows($inq) > 0) {
                           
$tm->globalstart();
                           
this_menu();
                           
$tm->globalerror($lang['cpu_error_isset']);
                           
$tm->globalend(); 

Заменить на:

php Код: Выделить всё Развернуть
$inq $db->query("SELECT musicid FROM ".$basepref."_music WHERE cpu = '".$db->escape($cpu)."'  AND musicid <> '".$musicid."'");
                       if (
$db->numrows($inq) > 0) {
                           
$cpu $musicid.'-'.$db->escape($cpu); 

..

При добавлении/редактировании будет изменять ЧПУ на ID записи в БД + '-' + ЧПУ
То бишь:
Если ЧПУ:

php Код: Выделить всё Развернуть
test

совпало, то измениться на:

Код: Выделить всё Развернуть
417-test

..
Где:
417 == последняя запись в БД + 1




Похожие темыКомментарии ПросмотрыПоследнее сообщение
02336Клонирование модуля "Файлы&quo...
Сообщение от: Admin
0692Клонирование модуля "Файлы&quo...
Сообщение от: Admin
02926Danneo CMS модуль Music - добавляем...
Сообщение от: Admin
04593Установка и настройка Danneo CMS на...
Сообщение от: Admin
02501Danneo CMS v0.5.5. Косяк в autocomp...
Сообщение от: Admin