PHP and JQuery and AJAX and Upload Files!

Печать RSS
440

F
Автор
Землянин
0
На последний вопрос нашел ответ сам:
// Where the file is going to be placed
$target_path = 'img/';
$ext = preg_replace('/(?:.*)(\.{1}[a-zA-Z]{3,4})$/','$1', $_FILES['file']['name']);
$unic_name  = time().'_'.rand(0,1000).$ext;
/* Add the original filename to our target path.
Result is "uploaded_files/filename.extension" */
$target_path = $target_path . $unic_name; 
if(move_uploaded_file($_FILES['file']['tmp_name'], $target_path)) {
    echo "The file ".  $target_path .
    " has been uploaded";
} else{
    echo "There was an error uploading the file, please try again!";
}



if($_POST['nfoto']){
   
$result = mysql_query ("INSERT INTO foto (id_pcat, n_foto, o_foto, u_foto, date)
    VALUES ('".$_POST['pcfoto']."', '".$_POST['nfoto']."', '".$_POST['ofoto']."', '".  $target_path ."', '".date('d/m/Y H:i')."')");

Остальные вопросы пока в силе.

Голубые штаны
0
Аплоад лучше всего делать во фрейме, с применением легкой JS-магии.
F
Автор
Землянин
0
12. dima.london, он сам не легок за то) скрипт даже на лакалке грузится долго) что же будет в инете))

Голубые штаны
0
13. 6680, ты сейчас какую-то дикую ерунду говоришь.
F
Автор
Землянин
0
Хотелось бы узнать про Upload, предположим вот мои надстройки скрипта:

<script type="text/javascript">
$(document).ready(function() {
	$("#uploadify").uploadify({
		'uploader'       : 'scripts/uploadify.swf', // Относительный путь к файлу uploadify.swf. По умолчанию uploadify.swf
		'script'         : 'scripts/uploadify.php', // Относительный путь uploadify.php. По умолчанию uploadify.php. Это скрипт - загрузчик. Обязательно посмотрите его
		'cancelImg'      : 'scripts/cancel.png', // Относительный путь до картинки cancel.png. По умолчанию cancel.png
		'folder'         : 'uploads', // Путь к папке, в которой Вы хотите сохранять загружаемые файлы. 
                                      //Эту настройку можно опустить, тогда папку загрузки необходимо определить в uploadify.php
                                      //Помните! На большистве хостингов, папка, в которую Вы пытаетесь загрузить файлы должна быть доступна на запись, не забудьте выставить соответствующие права 
		'queueID'        : 'fileQueue', // ID элемента, в котором будет показываться очередь загрузки
        'queueSizeLimit' : '10', // Лимит очереди (максим. число загруж файлов). По умолчанию 999
		'auto'           : false, // Если истина, загрузка начнется сразу после выбора файлов
		'multi'          : true,  // Если истина, то разрешена загрузка нескольких файлов
        'fileDesc'       : 'только фотографии jpg', // Текст, который будет внизу появляющегося диалогового окна. Без этого параметра будет написано "Все файлы('.')"
        'fileExt'        : '*.jpg; *.jpeg; *.JPG; *.JPE; *.jpe', // разрешенные к загрузке файлы (остальные вдиалолговом окне будути скрыты)
        'sizeLimit'      : 1500000, // Макс. Размер файла для каждой загрузки (в байтах). Если не указываем, ограничено будет только настройками Вашего сервера
        'simUploadLimit' : 1, // Ограничение на кол-во одновременных закачек. По умолчанию 1. Если значение равно 1, то загружаться будет 1 файл, а остальные будут стоять за ним в очереди. Если 2 - два загружаются, остальные ждут их  и т.д
        'buttonText'     : 'File', // Текст на кнопке. По умолчанию BROWSE. К сожалению русскийтекст не поддрживается
        'buttonImg'      : 'scripts/btn.png', // Путь до картинки, которая будет служить кнопкой. Компенсирует недостаток предыдущей. Если эта настройка указана, предыдущая будет проигнорирована
      'width' : 255,
	  'height' : 87,
	  // 'onInit'        : alert('Скрипт готов!'),// Функция, которая срабатывает, когда скрипт будет загружен. По умолчанию обработчик событий скрывает целевой элемент на странице и заменяет его с флэш-файл, затем создает очереди контейнера после него.

F
Автор
Землянин
0
       'onSelect'       : function(event, queueID, fileObj){ // Функция, которая сработает, при выборе каждого файла. Пример:
                            var string =  'Имя фала: '     + fileObj.name  +'\n';
                                string += 'Размер файла: ' + fileObj.size  + 'байт\n';
                                string += 'Тип: '          + fileObj.type  + '\n';  
                                string += 'ID в очереди: ' + queueID       +'\n'; // уникальный ID файла, генерируется скриптом
                            alert(string)
                         },
        'onSelectOnce'  : function(event, data){   //Функция, которая вызывается один раз для каждой операции выбора.
                            var string  = 'Файлов в очереди: '                  + data.fileCount      +'\n';
                                string += 'Было выбрано файлов: '               + data.filesSelected  +'\n';
                                string += 'Заменено файлов в очереди: '         + data.filesReplaced  +'\n';
                                string += 'Итоговый вес файлов в очереди: '    + data.allBytesTotal  +'\n';
                            alert(string); 
        },
        
        '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);
        },
        
F
Автор
Землянин
0
'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('');}); // Плавно прячем информационные блоки и затем очищаем их           
        }});});</script></head><body>

Добавлено через 03:06 сек.
'auto' : false, // Если истина, загрузка начнется сразу после выбора файлов

Когда стоит лож появляются строки загрузок файлов и ждут, а вот чего они ждут? для продолжения нужно что то сделать, запустить функцию, как это сделать? значение "истина" мне не подходит.
F
Автор
Землянин
0
14. dima.london, Можешь подсказать как запустить дальнейшую загрузку выбранных файлов?
F
Автор
Землянин
0
Вопрос выше отподает!
Кто знает можно ли в скрипте надстройки сделать так что бы файл менял свое имя? чтобы это делать не в PHP а прям в JS при загрузке картинок.
F
Автор
Землянин
0
Уже тоже не надо) тему можно считать закрытой
Стикеры / Теги / Правила / Топ тем / Топ постов / Поиск