Понедельников НЕТ!
Регистрация или вход Регистрация или вход Избранное на этом сайте | Главная | Анкета | Рекомендовать | Обратная связь | В избранное | Сделать домашней
Скачать SSDForums
Скачать SSDForums 1.0.1 Скачать SSDForums 1.0.1
Скачать SSDForums 1.0.1 SP1 Скачать SSDForums 1.0.1 SP1
Скачать SSDForums 1.0.1 SP2 Скачать SSDForums 1.0.1 SP2
SSD Forums 1.0.1 SP3 only Slaed 3.5 Pro SSD Forums 1.0.1 SP3 only Slaed 3.5 Pro
SSD Forums 1.0.1 SP4-beta only Slaed 4.1 Pro SSD Forums 1.0.1 SP4-beta only Slaed 4.1 Pro
Jewelry Сase Team
Скачать Ruby Chat 0.1.1 Скачать Ruby Chat 0.1.1
Меню
Главная
Форум
Магазин цифровых товаров

Новости
Подписка на новости
Темы новостей
Добавить новость

Каталог файлов
Карта файлового архива
Публикации

Опросы
Анкета пользователя
Чат

BestMaker
Викторина
Архив новостей
Карманный оракул
Поиск по сайту с помощью Яндекс
Поиск по сайту с помощью Google
Фото дня
Для души
Погода на 3 дня
IndexCat
IndexTop
Map_Pages
Публикации
Files
Загрузка пользователем файла и картинки к нему (модуль Files для Slaed 2.1 Lite)


В стандартном варианте пользователю ну никак не загрузить скриншот с компьютера вместе с файлом - по умолчанию скриншот должен хранится на каком-то другом сайте, что очень неудобно пользователям.
Сегодня мы решим эту проблему стандартными функицями Slaed 2.1




II. Редактируем modules/Files/admin/index.php

3.1. После того, как администратор принял решение о размещении или удалении присланного пользователем файла необходимо также разместить или удалить картинку из временного каталога. Привожу начала соответствующих функций
Код
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
function delit_file($lid, $ok=0) {
   global $prefix, $db, $temp_path, $path, $admin_file;
    if ($ok==1) {

#---------------------------- начало изменений - в запрос добавлено поле img
      $sql = "SELECT url, img FROM ".$prefix."_files WHERE lid=$lid";
#---------------------------- конец изменений

        $result = $db->sql_query($sql);
        $row = $db->sql_fetchrow($result);
        $filelink = $row[url];
        $filel = array_reverse(explode("/", $filelink));
      if (file_exists("".$temp_path."/".$filel[0]."")) {
         $delf = "".$temp_path."/".$filel[0]."";
         @unlink($delf);
        }
        if (file_exists("".$path."/".$filel[0]."")) {
         $delf = "".$path."/".$filel[0]."";
         @unlink($delf);
        }

#---------------------------- начало изменений
      $filelink = $row[img];
      $filel = array_reverse(explode("/", $filelink));
      if (file_exists("".$temp_path."/".$filel[0]."")) {
         $delf = "".$temp_path."/".$filel[0]."";
         @unlink($delf);
        }
        if (file_exists("".$path."/".$filel[0]."")) {
         $delf = "".$path."/".$filel[0]."";
         @unlink($delf);
        }
#---------------------------- конец изменений

Код
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
function file_add_save($lid, $title, $description, $cid, $filelink, $imglink, $author, $authormail, $authorurl, $f_version, $filesize) {
    global $prefix, $db, $temp_path, $path, $admin_file;
   $description = (intval($_POST['usehtml'])) ? nl2br(stripslashes($description)) : nl2br(stripslashes(text_filter($description, 2)));
    $filel = array_reverse(explode("/", $filelink));
   if (file_exists("".$temp_path."/".$filel[0]."")) {
      $oldfile = "".$temp_path."/".$filel[0]."";
      $newfile = "".$path."/".$filel[0]."";
      @rename($oldfile, $newfile);
      $filelink = "".$path."/".$filel[0]."";
    }

#---------------------------- начало изменений
   $filel = array_reverse(explode("/", $imglink));
   if (file_exists("".$temp_path."/".$filel[0]."")) {
      $oldfile = "".$temp_path."/".$filel[0]."";
      $newfile = "".$path."/".$filel[0]."";
      @rename($oldfile, $newfile);
      $imglink = "".$path."/".$filel[0]."";
    }
#---------------------------- конец изменений

Т.е. происходят теже действия, как и с загруженным файлом, только мы подменили в коде ссылку на картинку.


На этом всё.
Не забудбте выставить параметры на картинки в конфигурациях модуля.
Файлы из дистрибутива системы со всем внесёнными изменениями можно скачать тут.


Дата публикации: 04.02.2007
Прочитано: 12311 раз
Всего 1 на 2 страницах по 1 на каждой странице
[<<] [ 1 | 2 ]
[ Назад | Начало | Наверх ]
Комментарии

MrSmit
Дата: 02.08.2007 | Комментарий: 15
MrSmitЗаработало!!! Serg_pnz спасибо тебе что помогаешь таким неучам как я.
Serg_pnz
Дата: 02.08.2007 | Комментарий: 14
Serg_pnzВот ошибка.
Код
1
2
$sql = "SELECT url, img FROM ".$prefix."_files WHERE lid=$lid";
        $sql = "SELECT url FROM ".$prefix."_files WHERE lid=$lid";

Надо добавить в запрос поле, а не добавить мою строку.
Т.е. в данном случае вторая строка лишняя.
Не все кальсоны с оторванными пуговицами - брюки. © Serg_pnz
"...даме водки? Это чистый спирт!" © кот Бегемот
MrSmit
Дата: 02.08.2007 | Комментарий: 13
MrSmit
PHP - Код
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
<?php
function delit_file($lid, $ok=0) {
    global
$prefix, $db, $temp_path, $path, $admin_file;
    if (
$ok==1) {
      
$sql = "SELECT url, img FROM ".$prefix."_files WHERE lid=$lid";
        
$sql = "SELECT url FROM ".$prefix."_files WHERE lid=$lid";
        
$result = $db->sql_query($sql);
        
$row = $db->sql_fetchrow($result);
        
$filelink = $row[url];
        
$filel = array_reverse(explode("/", $filelink));
        if (
file_exists("".$temp_path."/".$filel[0]."")) {
            
$delf = "".$temp_path."/".$filel[0]."";
            @
unlink($delf);
        }
        if (
file_exists("".$path."/".$filel[0]."")) {
            
$delf = "".$path."/".$filel[0]."";
            @
unlink($delf);
        }
      
$filelink = $row[img];
      
$filel = array_reverse(explode("/", $filelink));
      if (
file_exists("".$temp_path."/".$filel[0]."")) {
        
$delf = "".$temp_path."/".$filel[0]."";
         @
unlink($delf);
        }
        if (
file_exists("".$path."/".$filel[0]."")) {
        
$delf = "".$path."/".$filel[0]."";
         @
unlink($delf);
        }
        
$db->sql_query("DELETE FROM ".$prefix."_comment WHERE cid='$lid' AND modul='Files'");
        
$db->sql_query("DELETE FROM ".$prefix."_files WHERE lid='$lid'");
        
Header("Location: ".$admin_file.".php?op=files");
    } else {
        list(
$title) = $db->sql_fetchrow($db->sql_query("SELECT title FROM ".$prefix."_files WHERE lid='$lid'"));
        
head();
        
FilesNavi();
        
OpenTable();
        echo
"<center>"._DELETE." \"$title\"?
        CloseTable();
        foot();
    }
}
?>
Serg_pnz
Дата: 02.08.2007 | Комментарий: 12
Serg_pnzMrSmit, в п.3.1. поле img в функции function delit_file($lid, $ok=0) в запросе добавил?

Выложи эту функцию, я гляну
Не все кальсоны с оторванными пуговицами - брюки. © Serg_pnz
"...даме водки? Это чистый спирт!" © кот Бегемот
MrSmit
Дата: 02.08.2007 | Комментарий: 11
MrSmitВсетаки и в папке темп картинка остается, не удаляется
MrSmit
Дата: 02.08.2007 | Комментарий: 10
MrSmitНеа... всеравно не хотит.. в настройка указал путь к public (место где лежит картинка) но всеравно неудалило
Serg_pnz
Дата: 02.08.2007 | Комментарий: 9
Serg_pnzMrSmit, дело точно не в версии. Картинка переносится из темп в паблик, туда, где файл...

Функция делит одна на админку, так что если с темп работает, то и с остальным работать должна.

Проверь в конфиге какой у тебя стоит путь до картинок? Также нужно посмотреть какой путь к картинке прописан в базе в таблице...
Может из-за этого?
Не все кальсоны с оторванными пуговицами - брюки. © Serg_pnz
"...даме водки? Это чистый спирт!" © кот Бегемот
MrSmit
Дата: 02.08.2007 | Комментарий: 8
MrSmitТа до конца я ее дочитал.. но я говорю то что у меня не удаляются.... Это скорее всего что из-за версии, у меня 2,4

Ты скорее всего меня непонял... с папочки темп оно удаляется... а уже послепроверки админом, уже нет

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
отредактированно 02.08.2007г.
Serg_pnz
Дата: 02.08.2007 | Комментарий: 7
Serg_pnzПрочитать статью до конца
Не все кальсоны с оторванными пуговицами - брюки. © Serg_pnz
"...даме водки? Это чистый спирт!" © кот Бегемот
MrSmit
Дата: 02.08.2007 | Комментарий: 6
MrSmitА если файл был подтвержден и добавлен администратором, и потом удалить файл, то картинка остается в папке public, не удаляется... Как это исправить?
Всего 25 на 3 страницах по 10 на каждой странице
[<<] [ 1 | 2 | 3 ] [>>]
Вы не можете отправить комментарий анонимно, пожалуйста зарегистрируйтесь.
Календарь 3 в 1
- М - Г + Г + М
Июнь, 2026
пнвтсрчтптсбвс
1234567
891011121314
15161718192021
22232425262728
2930
Купить.
Можно в кредит на 90 дней!
Навигация
»» RSS
Главная | Форум | Новости | Подписка на новости | Темы новостей | Добавить новость | Каталог файлов | Карта файлового архива | Публикации | Опросы | Анкета пользователя | Чат | BestMaker | Викторина | Архив новостей | Карманный оракул | Поиск по сайту с помощью Яндекс | Поиск по сайту с помощью Google | Фото дня | Для души | Погода на 3 дня | IndexCat | IndexTop | Map_Pages | Весь Оракул


Генерация страницы: 0.040 сек. и 17 запросов к базе данных за 0.009 сек.
Web site engine code is Copyright © 2006 by SLAED CMS. All rights reserved.