ساخت برنامه با قابليت آپديت ديتابيس از اينترنت!

blue_rays

Member
با عرض سلام خدمت دوستان و مديران سايت.:oops:

من ميخام روي يه پروژه كار كنم كه قابليت آپديت بانك اطلاعاتيش رو از اينترنت رو داشته باشه. :paint:
به اين صورت كه هركسي كه اين نرم افزار رو داشته باشه بتونه يه سري اطلاعات مربوطه به موضوع رو به اون اضافه يا جستجو كنه.
فايل ديتابيس هم روي يه هاست قرار بگيره كه برنامه از طريق اينترنت به اون دسترسي پيدا كنه.
ميدونم براي اين كار ميشه يه سايت ساخت ولي تاكيد روي اينه كه حتمآ برنامه داشته باشه. :shock:
اصْلآ چنين كاري با ام ام بي شدني هست يا اينكه كسي در اين خصوص يا مرتبط با اين موضوع اطلاعاتي داره؟ اگه از دوستان كسي اطلاعاتي هرچند كم در رابطه با اين موضوع داره بگه ممنون ميشم.

لطفآ بهترين پلاگين هايي هم كه ميشه براي شروع اين پروژه استفاده كرد هم معرفي كنيد.

با تشكر از دوستاني كه كمك ميكنن. :wink:

(اميدوارم اين موضوع ديگه به كركينگ مربوط نباشه جناب سيلور كاور :) . در رابطه با اون موضوع هم هرچند هنوزم فكر ميكنم كاري در تضاد با قوانين فوروم نكردم ولي بازم معذرت ميخام و اميدوارم تكرار نشه.)
 

ubuntu

Member
من هم روي اين موضوع کار کردم و از لحاظ تئوري به نتيجه کاملي رسيدم. ولي تا حالا عمليش نکردم.
ايده اين جور بروزرساني از آنتي ويروس کسپرسکاي به ذهنم رسيد. ولي با اون يه خورده فرق داره
به صورت خلاصه مي‌شه روش کار رو اينجوري بيان کرد:
اول بايد يک آدرس معين و ثابت تو اينترنت گير بيارين که توش بشه کدي رو اضافه يا کم کرد. ترجيحاً از نوع txt يا htm.
دستوري رو که مي‌خواهيم نرم‌افزار ما با اون آپديت بشه رو هر بار تو يک خط جداگانه مي‌نويسيم. (هر دستور يک خط)
مرحله بعد نرم‌افزار ما بايد اين فايل txt يا ... رو از اينترنت دانلود کنه که تا به حال موارد زيادي پلاگ‌اين براش نوشته شده. فکر کنم يه پلاگ‌اين هم بود که فقط کد رو مي‌گرفت که اين يکي بيشتر به درد ما مي‌خوره.
قدم بعدي اينه که برنامه‌ي ما او متني رو که دانلود کرده با مشابه اون در فايل‌هاي خودش مقايسه کنه و هر خطي که شامل دستور جديديه رو اجرا کنه.
در آخر هم بايد برنامه‌ي ما فايل متني خودش رو تا اون جايي که انجام شده ارتقا بده.
 

Aref_Alikhani

Well-Known Member
سلام
يكي از دوستان يه برنامه ساخته بود كه قيمت سخت افزارها رونشون مي داد كه آپديت هم مي شد يه نگاهي به اون بنداز شايد كارت راه افتاد....
 

blue_rays

Member
من هم روي اين موضوع کار کردم و از لحاظ تئوري به نتيجه کاملي رسيدم. ولي تا حالا عمليش نکردم.
ايده اين جور بروزرساني از آنتي ويروس کسپرسکاي به ذهنم رسيد. ولي با اون يه خورده فرق داره
به صورت خلاصه مي‌شه روش کار رو اينجوري بيان کرد:
اول بايد يک آدرس معين و ثابت تو اينترنت گير بيارين که توش بشه کدي رو اضافه يا کم کرد. ترجيحاً از نوع txt يا htm.
دستوري رو که مي‌خواهيم نرم‌افزار ما با اون آپديت بشه رو هر بار تو يک خط جداگانه مي‌نويسيم. (هر دستور يک خط)
مرحله بعد نرم‌افزار ما بايد اين فايل txt يا ... رو از اينترنت دانلود کنه که تا به حال موارد زيادي پلاگ‌اين براش نوشته شده. فکر کنم يه پلاگ‌اين هم بود که فقط کد رو مي‌گرفت که اين يکي بيشتر به درد ما مي‌خوره.
قدم بعدي اينه که برنامه‌ي ما او متني رو که دانلود کرده با مشابه اون در فايل‌هاي خودش مقايسه کنه و هر خطي که شامل دستور جديديه رو اجرا کنه.
در آخر هم بايد برنامه‌ي ما فايل متني خودش رو تا اون جايي که انجام شده ارتقا بده.

خيلي ممنون ايده ي بسيار عاليي هست.
من هم يه همچين ايده اي داشتم و ايدش از آنتي ويروس Eset به ذهنم رسيد!!!:shock: باور كنيد. خيلي جالبه ايده ي شما هم از روي يك آنتي ويروس بوده. در مورد اون ديتابيسش هم به يك فضاي اينترنتي فكر ميكردم ولي ايده ي شما در مورد يك صفحه ي text يا html خيلي بهتره و جالبتره. فقط ميمونه اينكه اون صفحه رو چطور بايد گير بياريم. اينجا از آقا حامد كمك ميخايم چون خودش تو اين كاراست و سايت طراحي ميكنه. :)
نظر من هم اينه كه اطلاعات با تاريخ ثبت بشه و برنامه موقع آپديت بياد تاريخ رو چك كنه و با تاريخ ديتابيس خودش تطبيق بده و قسمت هاي جديد رو اضافه كنه اين قسمت رو هم Eset الهام گرفتم!. اگه اين ايده عملي بشه از دانلود كردن فايل بهتره ولي اگر نشه تنها را همون دانلودشه. :cool:
اگه ميشه اون پلاگين كه فقط كد رو ميگيره رو هم معرفي كنيد.
مثل اينكه شما اين ايده رو قبلآ داشتيد و خوب هم روش فكر كرديد. خيلي برنامه كامل و جالبي ميشه. :paint:


*****
يكي از دوستان يه برنامه ساخته بود كه قيمت سخت افزارها رونشون مي داد كه آپديت هم مي شد يه نگاهي به اون بنداز شايد كارت راه افتاد....

بله من هم اون برنامه رو دانلود كردم و ديدم ولي تا اونجا كه يادمه سورس نداشت و فقط فايل اجرايي رو گذاشته بودن. تا حدودي هم محدود بود و يه كم هم مشكل داشت كه البته اميدوارم در ورژن هاي جديدش حل بشه.
حالا همون دوست عزيز اگه بيان تجربياتشون رو در اختيار ما و بقيه دوستان قرار بدن اين جور پروژه ها با سرعت بيشتري پيش ميره.
در مورد برنامشون هم يه ايده دارم. اينكه براي هر نوع قطعه بيان يه صفحه اختصاص بدن و نام شركت سازنده و نوع قطعه همراه با قيمتش توي يك پاراگراف يا يه Listbox لود بشه . اينطوري قابليت جستجو هم داره.
*****

حالا برگرديم به پروژه جديد.
اين پروژه اگه عملي بشه در حقيقت يه پروژه پويا و ديناميك ميشه كه قابليت هاي زيادي ميشه با اين كار بهش اضافه كرد.
لطفآ هر كدوم از دوستان اطلاعاتي دارن اونا هم توي اين تاپيك به اشتراك بزارن

ممنون
 

nevercom

کاربر متخصص انجمن مولتی مدیا بیلدر
سلام،
این پروژه از چند قسمت تشکیل شده، یک قسمت مربوط به دریافت اطلاعات از اینترنت هست، که تقریباً امکانپذیر هست، اگه که فایل شما دیتابیس آپدیت شده(دیتانیس قبلی + اطلاعات جدید) باشه که میشه خیلی راحت جایگزین دیتابیس قبلی بشه، وگرنه باید با توجه به ساختار دیتابیستون، اطلاعات جدید رو بصورت آنلاین دریافت کنید و بعدا از اتمام دانلود (بصورت آفلاین) اطلاعات جدید رو به دیتابیستون اضافه کنید
برای اینکار شما نیاز به فضای ذخیره سازی دارید که براحتی قابل تهیه هست،
قسمت بعد نحوه تشخیص برنامه از وجود اطلاعات جدید هست، که همونطور که فرمودید مناسب ترین روش این هست که فایلها تاریخ گذاری بشن، یعنی مثلاً نامگذاری فایل به فرمتی باشه که برنامه بتونه ازش اطلاعاتی رو بدست بیاره، مثلا 081125 که ساده ترین فرم هست و مشخص کننده ی تاریخ فایل هست، ولی چون در حالت عادی ما این توانایی رو نداریم که هاست رو (مثل کامپیوترهای لوکال) سرچ کنیم و از وجود اطلاعات جدید باخبر بشیم میتونیم آدرس جدیدترین آپدیت رو در فایل مشخصی قرار بدیم، مثلا برنامه هربار که میخاد خودش رو آپدیت مکنه، یک فایل مشخص رو از آدرسی مشخص مثل http://www.myhost.com/Update/newest.txt دانلود کنه و چک کنه ببینه آپدیت جدیدی وجود داره یا نه... و اگه بود دانلودشون کنه.
در ضمن یه پیشنهاد، شما میتونید قسمتی از کدهای پروژتون رو از خارج اجرا کنید، یعنی مثلاً بخشی از کدهاتون رو توی یه فایل متنی ذخیره کنید، و توسط دستور RunScriptCode اجراش کنید، اینجوری امکانش هست که یک سری دستورات دیگه رو هم بتونیم بعد از کامپایل برنامه بهش اضافه کنیم، البته میشه این فایل رو هم EnCrypt کرد تا از دسترسی غیر مجاز محفوظ باشه
 

blue_rays

Member
با تشكر از دوستاني كه همكاري ميكنن. :oops:

جناب ubuntu و جناب nevercome اگه ميشه پلاگين ها و ابزار هاي مورد نياز اين كار رو معرفي كنيد و بزاريد.
اگه از دوستان كسي نمونه اي هم داره بزاره ممنون ميشم.

مرحله بعد نرم‌افزار ما بايد اين فايل txt يا ... رو از اينترنت دانلود کنه که تا به حال موارد زيادي پلاگ‌اين براش نوشته شده. فکر کنم يه پلاگ‌اين هم بود که فقط کد رو مي‌گرفت که اين يکي بيشتر به درد ما مي‌خوره.
اگه ميشه اون پلاگين رو هم بزاريد.
اگه برنامه بتونه ديتابيس رو از رو خود اينترنت چك كنه خيلي بهتره چون زمان كمتري رو ميگيره. :D
شبيه ترين مثال به اين برنامه فكر ميكنم يه برنامه مشاور املاك باشه كه اطلاعات زمين و ... كه مربوط به كارشون ميشه رو ثبت كنه و قابليت جستجو هم داشته باشه. البته هر كسي اين برنامه رو داشته باشه بتونه اطلاعات ثبت كنه.
اين يه ذره مشكل تره چون علاوه براي آپديت اطلاعات ثبت شده نياز داره كه بتونه خودش هم يه اطلاعاتي رو اضافه كنه.:shock:
 

nevercom

کاربر متخصص انجمن مولتی مدیا بیلدر
آپدیت برنامه [مثال]

یکی از پلاگینها، Weirdo PlugIn هست کع فکر کنم تو بخش پلاگینا باشه
برای نوشتن اطلاعات هم فکر کنم بشه از طریق یه ارتباط FTP اینکارو کرد

Weirdo PlugIn : http://www.mmbforums.com/ipb/index.php?showtopic=17624&hl=weirdo
و این هم یکی از مثالهای این پلاگین هست که یه مقدار برای نشون دادن روش آپدیت تغییرش دادم، البته این خیلی با چیزی که باید ساخته بشه فاصله داره :
 

پیوست ها

  • update demo.rar
    318.2 کیلوبایت · بازدیدها: 163
آخرین ویرایش:

hossein_mmb

Member
دوستان اين مثال رو هم ببينيد ، مربوط به مدتها قبله ( و احتمالا تكراري )
ولي مطمئنا به دردتون ميخوره :wink:
در اين مثال ما يك فايل متني رو از اينترنت دانلود كرده و اطلاعاتشو ميخونيم...
 

پیوست ها

  • download.rar
    336.3 کیلوبایت · بازدیدها: 144

ubuntu

Member
درسته! اون مثالي که جناب حسين گذاشتن دقيقاً همون چيزيه که نياز بود. من هم منظورم از پلاگ‌ايني که فقط کد رو دانلود کنه Miscdll بود که متأسفانه بعضي جاها خوب کار نمي‌کنه. همون مثال جناب hossein_mmb عاليه! فقط يه ذره بايد روش کار بشه و متناسب با نيلز شما تغيير داده شه.
 

جدیدترین ارسال ها

بالا