-
jquery uploader
با سلام خدمت همه دوستان گل و بلبل
جریان اینه: یه uploader با jquery از لینک زیر دانلود کردم که همه جوره خوبه :
نقل قول:
کد:
http://www.uploadify.com/download/
راه اندازی ساده ، امکانات خوب و ...
اما مشکل :
وقتی تو فایل uploadify.php یه session تعریف میکنم و میخوام تو صفحه دیگه call کنم پیغام میده که اصلا انگار هیچ session تعریف نشده. با جستجو ... متوجه شدم که این یه باگه فلش که اتومات بعد اجرای دستورات کاری میکنه که انگار هیچ سیژنی تعریف نشده
بعد کلی گشت و گذار و ... یه چند نفر روش حل مشکل گفتن :
نقل قول:
کد:
http://www.uploadify.com/forum/viewtopic.php?f=5&t=43
کد:
http://www.uploadify.com/forum/viewtopic.php?f=7&t=2062
کد:
http://stackoverflow.com/questions/1284666/sessions-and-uploadify
منتهی من هر کاری میکنم هیچ نتیجه ای نمیگیرم حالا من کد خودمو میذارم شما لطفا یه نگاهی بندازین ببینین کجای کد من اشتباست و باید تغییر بدم؟
....
صفحه ای که uploader فراخوانی میشه :
کد:
<script type="text/javascript">
$(document).ready(function() {
$("#uploadify").uploadify({
'scriptData': {'session_name': '<?= session_id(); ?>'},
'scriptData': {'PHPSESSID': '<?php echo session_id();?>'},
'uploader' : 'ajaxphpfiles/scripts/uploadify.swf',
'script' : 'ajaxphpfiles/scripts/uploadify.php',
'cancelImg' : 'cancel.png',
'folder' : 'uploads',
///////////////////////////////////////////////
'buttonText' : 'Select your file',
//////////////////////////////////////////
'queueID' : 'fileQueue',
'auto' : false,
'multi' : false,
'hideButton' : false,
'fileDesc' : 'Image files',
'fileExt' : '*.jpg;*.jpeg;*.gif;*.png',
'sizeLimit' : 1000000000,
'onProgress' : function(event, queueID, fileObj, data){
if(data.percentage == 100){
$('#uploadify'+queueID).fadeOut('slow');
}
},
'onCancel' : function(event, queueID){
$('#uploadify'+queueID).fadeOut('slow');
}
});
});
....
صفحه ای که دستورات php برای عملیات بر روی فایل upload صورت میگیره به نام : uploadify.php
[PHP]<?php
if (!empty($_FILES)) {
$tempFile = $_FILES['Filedata']['tmp_name'];
$filename = $_FILES['Filedata']['name'];
$targetPath = $_SERVER['DOCUMENT_ROOT'] . $_REQUEST['folder'] . '/';
/////////////// added by me
$wrong = array('[',']',',',';','%',' ','=','+');
$newfile = str_replace($wrong,"",$filename);
$array = array(0,1,2,3,4,5,6,7,8,9,'a','b','c','d','e','f', 'g','h','i','j','l','k','m','n','o','p','q');
$i = 0;
while($i<10) {
$test .= $array[array_rand($array)];
$i++;
}
$ok = $test.'-'.$newfile;
$targetFile = str_replace('//','/',$targetPath) . $ok;
session_id($_REQUEST['session_name']);
session_start();
$_SESSION['test'] = $ok;// اینجا وقتی سیژن تعریف میکنم انگار که نه انگار
///////
move_uploaded_file($tempFile,$targetFile);
echo '1';
?>[/PHP]ممنون میشم راهنمایی کنید ، کلی وقتمو گرفته و هنوز ...
-
خب از یه راه دیگه ( دور زنی و زیر آبی ) سیژن و تعریف کردم و ...
ولی میخوام با هم این باگ رو حل کنیم و مشکل رو برطرف کنیم لطفا شما هم یه امتحانی بکنید و نظر بدید.
-
سلام
راه حلی که خودت هم رفتی رو توی پست دومت ویرایش کن و قرار بده :)
منم الان میبینم برای بررسی ...
ممنون//