progress bar

پرسیده شده
فعالیت 899 روز پیش
دیده شده 557 بار
0

گاها یه درخواستی به یک سرور بیرونی میفرستیم 

که خیلی زمان بر هستش این درخواست و فرایند مربوط به اون  شاید یک ساعت هم صفحه در حال رفرش هست تا قرایند کامل بشه

حالا اگه این درخواست رو بای ایجکس بفرستیم اطلا معلوم نیست که این رفرش 

 

حالا میشه برای این جور حالتی پروگرس باری چیزی ساخت که نشون بده چضدر از زمتنش رفته و مونده؟

من پروپرس بار آپلود و دانلود رو استفاده کردم ولی جواب نمیده 

فایل پیوست

محمد خضرپور
محمد خضرپور

14 آبان 00

0
حذف شده

سلام.

چون پروژه و کدهارو نمیبینیم نمیتونم دقیق راهنماییتون کنم اما برای این پروژه باید multi thread رو پیاده کنید(شایدم نیاز نباشه، کدهاتونو ندارم که نظر دقیقی داشته باشم) و یک راهش اینه بین پردازش، فایل های لاگی با file_put_contents ایجاد کنید و با ajax به صفحه ی دیگری ریکوئست ارسال کنید و مدام لاگ هارو چک کنید و پروگرستون رو آپدیت کنید. در صفحه ی دوم میتونه فقط یک if ساده از file_exists باشه یعنی فقط با اسم فایل های لاگ، نتیجه گیری کنید.

فقط یک نکته ی مهم، اگر در صفحاتتون از سشن استفاده کرده باشید، چون در این پروژه به دو صفحه یا بیشتر بصورت موازی ریکوئست ajax ارسال میکنید، مقاله Lock شدن فایل Session رو حتما بخونید تا به مشکلی برخورد نکنید.

فایل پیوست

محسن موحد

توسط

محسن موحد

15 آبان 00

حذف شده
اقای موحد واقعا شرمنده ولی من درمورد مسایل بالا هیچی نمیدونم حالا اونا رو سرچ میکنم ولی نمیدونم متوجه مشکل من شدید یا نه من الان یه درخواستی درام که وقتی میفرستم تا پایان درخواست زمان زیادی طول میشکه و صفحه مدام در حال رفرش شدن هست شاید بیش 2 ساعت حالا من میخوام یه پروگرس باری باشه که نشون بده چند درصد از درخواست جواب داده شده چقد مونده مثل پروگرس بار دانلود که میگه مثلا 20% رفته
محمد خضرپور

15 آبان 00

حذف شده
بالاخره باید به کلاینت چیزی تحویل بدید که پروگرس بار اپدیت بشه، در مثال دانلود یا اپلود تکه های مختلفی به سمت سرور و کلاینت ردو بدل میشه و از روی هدر، کلاینت میفهمه که چطور پروگرس بار آپدیت بشه ولی در مثال شما هیچ تبادلی با کلاینت وجود نداره
محسن موحد

15 آبان 00

حذف شده
برای همین گفتم اگر هیچ داده و ایده ای برای تبادل وجود نداره، میتونید در حین اجرای اسکریپت ما بینش لاگ تولید کنید، حالا چه بصورت فایل چه بصورت دیتابیس و امثال کش و...
محسن موحد

15 آبان 00

حذف شده
و یک درخواست اجاکس رو فقط برای آپدیت پروگرس بار در نظر بگیرید. یعنی یک درخواست برای اجرای اسکریپت، یک درخواست برای آپدیت موقعیت پروگرسبار
محسن موحد

15 آبان 00