ФорумПрограммированиеPHP для идиотов → Уважаемые подскажите

Уважаемые подскажите

  • Александр2010

    Сообщения: 116 Репутация: N Группа: Кто попало

    Spritz 20 ноября 2010 г. 17:23

    Добрый всем вечер.
    Возник вопрос написан скрипт для переименования и переноса загруженного файла но почемуто имя файла который создает этот скрипт я немогу никак вытащить ничего не понимаю сто происходит подскажите.

    Вот скрипт:
    Сначало ява скрипт:
    $(document).ready(function() {
    $("#uploadify").uploadify({
    'uploader' : 'scripts/uploadify.swf',
    'script' : 'add_news.php',
    'cancelImg' : 'scripts/cancel.png',
    'folder' : 'uploads',

    'queueID' : 'fileQueue',
    'queueSizeLimit' : '1',
    'auto' : true,
    'multi' : false,
    'fileDesc' : 'Неверный формат файла',
    'fileExt' : '*.jpg; *.jpeg; *.JPG; *.JPE; *.jpe; *.torrent; *.gif; *.phg;',
    'sizeLimit' : 1500000,
    'simUploadLimit' : 1,
    'buttonText' : 'Donload',
    'buttonImg' : '',

    // 'onInit' : alert('Скрипт готов!'),

    'onProgress' : function(event, queueID, fileObj, data){
    var string = 'Загружаем: ' + fileObj.name +'<br />';
    string += 'Размер: ' + fileObj.size +'<br />';
    string += 'Тип: ' + fileObj.type +'<br />';
    string += 'загрузка текущего файла: ' + data.percentage +'%<br />';
    string += 'загружено байт текущего файла: ' + data.bytesLoaded +'<br />';
    string += 'загружено байт всей очереди: ' + data.allBytesLoaded +'<br />';
    string += 'скорость загрузки, KB/s: ' + data.speed +'<br />';
    $('#info,#info2').show();
    $('#info').html(string);
    },
    'onComplete' : function(event, queueID, fileObj, response, data){
    var string = 'Загружен файл: ' + fileObj.name +'<br />';
    string += 'Путь до файла: ' + fileObj.filePath +'<br />';
    string += 'Размер, байт: ' + fileObj.size +'<br />';
    string += 'Тип: ' + fileObj.type +'<br />';
    string += 'Пришел ответ от сервера: ' + response +'<br />';
    string += 'Файлов в очереди: ' + data.fileCount +'<br />';
    string += 'скорость загрузки, KB/s: ' + data.speed +'<br />';

    $('#info2').append('<br />Фаил ' + fileObj.name + ' загружен!<br />');

    },
    'onAllComplete' : function(event, data){ // Срабатывает когда все загрузки завершены
    var string = 'Загружено файлов: ' + data.filesUploaded +'\n';
    string += 'Ошибок: ' + data.errors +'\n';
    string += 'Всего загружено kбайт: ' + data.allBytesLoaded/1024 +'\n';

    /*$('#info,#info2').fadeOut(5000, function() { $('#info,#info2').html('');});*/
    }



    });


    });


    А вот код который обрабатывает загруженный фаил дает ему новое имя и переносит в нужное место
    if (!empty($_FILES)) {
    $tempFile = $_FILES['Filedata']['tmp_name'];

    if(!$_REQUEST[folder]) $folder = '../uploads/';
    else $folder = $_REQUEST['folder'];

    $targetPath = $_SERVER['DOCUMENT_ROOT'] . $folder . '/';
    $ext = preg_replace('/(?:.*)(\.{1}[a-zA-Z]{3,4})$/','$1', $_FILES['Filedata']['name']);
    $unic_name = time().'_'.rand(0,1000).$ext;
    $targetFile = str_replace('//','/',$targetPath) . $unic_name;




    move_uploaded_file($tempFile,$targetFile);
    echo "1";

    }


    Как можно вытащить сгенерированное имя ?? очень нужно подскажите
  • Faster

    Сообщения: 1159 Репутация: N Группа: Кто попало

    Spritz 20 ноября 2010 г. 17:32, спустя 9 минут 2 секунды

    здесь не любят длинных простыней
  • Александр2010

    Сообщения: 116 Репутация: N Группа: Кто попало

    Spritz 20 ноября 2010 г. 17:36, спустя 4 минуты 22 секунды


    здесь не любят длинных простыней


    Если ты не знаешь как помочь лучше бы вобще ничего не писал я всегда стараюсь максимально развернуто изложить свою мысль. Чтобы такие как ты ничего не писали
  • Sinkler

    Сообщения: 7958 Репутация: N Группа: в ухо

    Spritz 20 ноября 2010 г. 17:40, спустя 3 минуты 46 секунд

    Как можно вытащить сгенерированное имя ?? очень нужно подскажите

    тебе $unic_name надо вернуть в javascript?
  • Александр2010

    Сообщения: 116 Репутация: N Группа: Кто попало

    Spritz 20 ноября 2010 г. 17:42, спустя 1 минуту 30 секунд


    Как можно вытащить сгенерированное имя ?? очень нужно подскажите

    тебе $unic_name надо вернуть в javascript?


    Не не мне нужно его вывести на экран в переменной и добавить в форму для отправки в базу данных
  • Sinkler

    Сообщения: 7958 Репутация: N Группа: в ухо

    Spritz 20 ноября 2010 г. 18:02, спустя 20 минут 48 секунд

    add_news.php

    if (!empty($_FILES)) {
    $tempFile = $_FILES['Filedata']['tmp_name'];
    if(!$_REQUEST[folder]) $folder = '../uploads/';
    else $folder = $_REQUEST['folder'];
    $targetPath = $_SERVER['DOCUMENT_ROOT'] . $folder . '/';
    $ext = preg_replace('/(?:.*)(\.{1}[a-zA-Z]{3,4})$/','$1', $_FILES['Filedata']['name']);
    $unic_name = time().'_'.rand(0,1000).$ext;
    $targetFile = str_replace('//','/',$targetPath) . $unic_name;
    if (move_uploaded_file($tempFile,$targetFile)) {
    echo $unic_name;
    } else {
    echo "0";
    }
    } else {
    echo "0";
    }


    $(document).ready(function() {
    $("#uploadify").uploadify({
    // <…>
    'onComplete' : function(event, queueID, fileObj, response, data){
    //теперь тут в переменной response = 0, если всё завершилось крахом, имя файла иначе
    },
    // <…>
    });
    });
    Спустя 69 сек.
    ну и респонс соответственно можешь аппендить в хидден инпут формы для отправки

Пожалуйста, авторизуйтесь, чтобы написать комментарий!