PDA

View Full Version : آپلود تصویر با استفاده از ajax



Golsha
چهارشنبه 19 شهریور 1393, 19:19 عصر
سلام دوستان من برای آپلود تصویر با استفاده از ajax از jqeury.form.min.js استفاده میکنم و این کد :

$('[name=uploadForm]').submit(function(e){
$('[name=uploadForm]').ajaxSubmit({
beforeSubmit: function() {
$('#stratUploading').html('<p class="Awesome Icon Indent05PX"></p>لطفا صبر کنید');
},
success: function(data) {
if(data == false) {
$('#stratUploading').html('<p class="Awesome Icon Indent05PX"></p>لطفا مجددا سعی نمایید');
} else {
$('#stratUploading').html('<p class="Awesome Icon Indent05PX"></p>با موفقیت انجام شد');
$('#changeHeaderImage').css('background-image', 'url(' + data + ')');
}
}
});
return false;
});

کد آپلود php هم به صورت خیلی ساده فایل رو از $_Files دریافت میکنه و اونو انتقال میده و آدرس عکس رو در صورت موفقیت آمیز بودن و مقدار false رو در صورت داشتن خطا بر میگردونه.
همه چیز درست کار میکنه ولی مشکل اصلی اینه که دفعه اول و دوم کد بالا کار میکنه ولی از دفعه دوم به بعد دیگه بعد از آپلود شدن فایل تصویر لود نمیشه یعنی تصویر #changeHeaderImage تغییر داده نمیشه و ثابت میمونه. (تصویر اصلی آپلود میشه ، مشکل اینجاست که باید بعد از آپلود تصویر نمایش داده بشه که بعد از دو دفعه آپلود شدن و نمایش داده شدن دیگه این اتفاق نمیوفته و تصویر ثابت میمونه و باید صفحه رو رفرش کنم . )

خواهشا بفرمایید چی کار کنم که مشکلم حل بشه ، پیشاپیش ممنون

hamidhassas
چهارشنبه 19 شهریور 1393, 20:04 عصر
آقا مشکلش حل شد اگه امکان داره اصل فایل ها را هم برا ی منم بزار که خیلی بهش نیاز دارم ممنون میشم اگه این لطف رو بکنی اگه شد بگین چطوری وقط آپلود هم سایز رو بشه تغییر داد هم فایل رو کامپرس کرد

Golsha
چهارشنبه 19 شهریور 1393, 21:37 عصر
آقا مشکلش حل شد اگه امکان داره اصل فایل ها را هم برا ی منم بزار که خیلی بهش نیاز دارم ممنون میشم اگه این لطف رو بکنی اگه شد بگین چطوری وقط آپلود هم سایز رو بشه تغییر داد هم فایل رو کامپرس کرد

سلام دوست عزیز دوتا فایل jquery.js و jquery.form.js رو باید اول دانلود کنی و داشته باشی ( میتونی از نسخه مینیشون استفاده کنی ) . مثل آپلود عادی یه فرم آپلود می سازی. برای تغییر اندازه عکس هم باید از این کد استفاده کنی :




$filename = $_FILES['form']["tmp_name"];
$src = imagecreatefromjpeg($filename);
$des = imagecreatetruecolor($newWidth,$newHeight);
imagecopyresampled($des,$src,0,0,0,0,$newWidth,$ne wHeight,$oldWidth,$oldHeight);
imagejpeg($des,$PathForSaveImage,100);

برای بدست آوردن اندازه اولیه عکس هم میتونی از تابع زیر استفاده کنی :



list($oldWidth,$oldHeight) = getimagesize($filename);



از اینا استفاده کنید تا اندازه تصویر رو تغییر بدید. قسمت آپلود کردن فایل هم که دیگه چیزی نیست ( ولی اگه خواستید بگید تا براتون بنویسم )

hamidhassas
پنج شنبه 20 شهریور 1393, 09:03 صبح
آقا اگه امکان داره میشه به صورت اسکریپ فایل برام بزارین چون اصلا نمیدونم باید چکار کنم

Golsha
پنج شنبه 20 شهریور 1393, 21:46 عصر
هل من ناصر ینصرنی ؟؟؟

noormohamadi
سه شنبه 27 آبان 1393, 15:41 عصر
سلام میشه ذخیره کردن عکس در دیتابیس رو با ajax-jquery توضیح بدید یا لینک راهنمایی بزارید

marys_farahani
سه شنبه 27 آبان 1393, 19:12 عصر
آپلود تصویر با ایجکس
(http://phppot.com/demo/jquery-progress-bar-for-php-ajax-file-upload/jquery-progress-bar-for-php-ajax-file-upload.zip)

webmaster.bagheri
دوشنبه 24 آذر 1393, 12:38 عصر
فیلم آموزشی (http://taranmarket.com/Trining/23-%D8%A2%D9%85%D9%88%D8%B2%D8%B4-%D8%A2%DA%98%D8%A7%DA%A9%D8%B3-%D9%82%D8%B3%D9%85%D8%AA-%D8%AF%D9%88%D9%85-%D8%A2%D9%BE%D9%84%D9%88%D8%AF-%D9%81%D8%A7%DB%8C%D9%84-%D8%A8%D8%A7-%D8%A2%DA%98%D8%A7%DA%A9%D8%B3.html) آپلود عکس با آژاکس (http://taranmarket.com/Trining/23-%D8%A2%D9%85%D9%88%D8%B2%D8%B4-%D8%A2%DA%98%D8%A7%DA%A9%D8%B3-%D9%82%D8%B3%D9%85%D8%AA-%D8%AF%D9%88%D9%85-%D8%A2%D9%BE%D9%84%D9%88%D8%AF-%D9%81%D8%A7%DB%8C%D9%84-%D8%A8%D8%A7-%D8%A2%DA%98%D8%A7%DA%A9%D8%B3.html) را می توانید از لینک مقابل دانلود کنید : مجموعه ی آموزشی آژاکس (http://taranmarket.com/Trining/) شامل آپلود فایل با آژاکس (http://taranmarket.com/Trining/23-%D8%A2%D9%85%D9%88%D8%B2%D8%B4-%D8%A2%DA%98%D8%A7%DA%A9%D8%B3-%D9%82%D8%B3%D9%85%D8%AA-%D8%AF%D9%88%D9%85-%D8%A2%D9%BE%D9%84%D9%88%D8%AF-%D9%81%D8%A7%DB%8C%D9%84-%D8%A8%D8%A7-%D8%A2%DA%98%D8%A7%DA%A9%D8%B3.html) ، ثبت اطلاعات با آژاکس (http://taranmarket.com/Trining/22-%D8%A2%D9%85%D9%88%D8%B2%D8%B4-%D8%A2%DA%98%D8%A7%DA%A9%D8%B3-%D9%82%D8%B3%D9%85%D8%AA-%D8%A7%D9%88%D9%84-%D8%AB%D8%A8%D8%AA-%D8%A7%D8%B7%D9%84%D8%A7%D8%B9%D8%A7%D8%AA-%D8%A8%D8%A7-%D8%A2%DA%98%D8%A7%DA%A9%D8%B3.html) ، حذف و ویرایش اطلاعات با آژاکس (http://taranmarket.com/Trining/25-%D8%A2%D9%85%D9%88%D8%B2%D8%B4-%D8%A2%DA%98%D8%A7%DA%A9%D8%B3-%D9%82%D8%B3%D9%85%D8%AA-%DA%86%D9%87%D8%A7%D8%B1%D9%85-%D8%AD%D8%B0%D9%81-%D9%88-%D9%88%DB%8C%D8%B1%D8%A7%D8%B4-%D8%A8%D8%A7-%D8%A2%DA%98%D8%A7%DA%A9%D8%B3.html) و جست و جو به شیوه ی آژاکس (http://taranmarket.com/Trining/24-%D8%A2%D9%85%D9%88%D8%B2%D8%B4-%D8%A2%DA%98%D8%A7%DA%A9%D8%B3-%D9%82%D8%B3%D9%85%D8%AA-%D8%B3%D9%88%D9%85-%D8%AC%D8%B3%D8%AA-%D9%88-%D8%AC%D9%88-%D8%A8%D8%A7-%D8%A2%DA%98%D8%A7%DA%A9%D8%B3.html) می باشد.
موفق و پیروز باشید

id1385
دوشنبه 24 آذر 1393, 22:35 عصر
سلام
این نمونه رو ببین ، قبلاً در این مورد توضیح دادم

نمایش در صد پیشرفت هنگام آپلود فایل
(http://barnamenevis.org/showthread.php?475394-%D9%86%D9%85%D8%A7%DB%8C%D8%B4-%D8%AF%D8%B1-%D8%B5%D8%AF-%D9%BE%DB%8C%D8%B4%D8%B1%D9%81%D8%AA-%D9%87%D9%86%DA%AF%D8%A7%D9%85-%D8%A2%D9%BE%D9%84%D9%88%D8%AF-%D9%81%D8%A7%DB%8C%D9%84&p=2132271&viewfull=1#post2132271)