وقتی یه ایده جایگزین دیتابیس شود
لینک کوتاه

امروز تقریبا ۷۰ درصد از یه برنامه رو نوشتم که خیلی وقت بود دوست داشتم بنویسمش ! البته امکاناتی که روش تا الان گذاشتم خیلی بیشتر از اون چیزی شده که فکرشو می کردم و فکر کنم بتونم در آینده بهتر از این کنمش . البته قبلا اینجا گفته بودم که نوشتن یه برنامه به نام پرتقال رو شروع کردم ، ولی این اون نیست و اینو تازه دو روزه  شروع کردم و فکر کنم طی فردا پس فردا تموم شه . شایدم اسمشو بزارم mynews ! البته چون نوشتنشو اتفاقی شروع کردم این اسمم فعلا اتفاقی گذاشتم روش و ممکنه عوضش کنم !

این برنامه مثل پرتقال عمومی نیست و دارم برای استفاده شخصی و خصوصی می نویسمش برای همین گفتم ایده و طرحشو اینجا بنویسم تا اگه کسی خوشش اومد ، اونم این برنامه رو بنویسه ، اول بزارید بگم که چی شد این ایده به ذهنم رسید و ماجرا چی بود و بعدش از برنامه بنویسم ، راستش بعد از اینکه یه سری سایت طراحی کردم ، بعضی از سفارش دهنده ها خواستن تا بتونن بعضی خبرها رو خیلی سریع تو سایتشون بنویسن ، من سایت هایی که طراحی می کنم بر مبنای hmtl هست و وبلاگا و سایتای شرکتی رو با هسته وردپرس می نویسم و اگر بخوام برای یه همچین کار کوچیکی از وردپرس استفاده کنم ، فضای اضافی و بی خود اشغال کردم و کلی از امکانات وردپرس بی کاربرد می مونه . اگه بخوام این کار رو به صورت cms انجام بدم چند تا مشکل دارم ، یکی اینکه من دانشم در زمینه sql یه خورده کمه و البته خیلی دنبالشم که خوب بتونم یادش بگیرم و مشکل بدیم اینه که برنامه نویسی php یم اونقدر خوب نیست که بتونم برای این کار admin و این چیزا درست کنم ، تازه وقتی حساب کردم دیدم اگه php هم خیلی خوب بلد بودم ، وقتم برای طراحی اینجور سایتا خیلی گرفته می شه و از همه چی می افتادم ! برای همین یه فکر دیگه کردم .

من تصمیم گرفتم به جای اینکه از sql استفاده کنم یه پایگاه داده توی هاست طرف بر مبنای html بسازم ! شاید به نظرتون احمقانه و غیر ممکن باشه ! ولی باور کنید حساب که کردم دیدم نه خیلی فضا می گیره و نه خیلی پیچیدست ! تازه می شه از این برنامه برای ۱۰۰۰ تا سایت استفاده کرد و امنیتشم به نظرم بیشتره ! اما بزارید دقیقا بگم که دارم چیکار می کنم :

ببینید من وقتی سایت طرف رو طراحی می کنم یه فولدر مثلا به اسم mynews هم توی سایتش می سازم که ازش بتونم به عنوان فولدر اطلاعاتم استفاده کنم ، بعد دیگه همه چی در عرض ۵ دقیقه با این برنامه آماده می شه ! اما چه جوری ؟!

من توی برنامه ای که نوشتم میام و اطلاعات ftp هاست طرف رو وارد می کنم و توی قسمتی از برنامه که برای قالب در نظر گرفتم میام و استایل اخبار رو مشخص می کنم . اما چون دارم بر مبنای زبون vbscript می نویسم باید از کدای همونم تو قالبش استفاده کنم و نمی تونم تگ html به کار ببرم ! مثلا برای پیشفرض برنامه ، من این کد رو قرار دادم :

new$='<P dir=rtl align=justify><FONT face=”Tahoma” size=”2″>’+news$+'<p><FONT size=”1″ align=”left”>ارسال شده در تاریخ ‘+day$+’/’+month$+’/’+year$+'</FONT></p></FONT></P>’

همونطور که گفتم باید تگای مورد استفاده ، با زبون vbscript همخونی داشته باشه ! من تو این استایل اومد یه new تعریف کردم که باید همیشه قبل از استایل نوشته بشه ، بعد متن اصلی خبرم رو news تعریف کردم که برنامه خودش متنو جایگزین می کنه و بعد روز و ماه و سال رو هم مشخص کردم که توی این استایل تعریف شده نشونشون بده ، این استایل رو هروقت که بخوایم می تونیم از تو برنامه تغییر بدیم و برنامه اخبارا رو بر مبنای این استایل منتشر می کنه

حالا وقتی برنامه رو باز می کنیم به صورت خودکار بررسی می کنه به اینترنت دسترسی داره یا نه و بعد از توی فولدر mynews که براش تعریف کردیم یه سری اطلاعات مثل تعداد خبرها و … رو می گیره و صفحه ی اصلی برنامه رو میاره ، توی صفحه اصلی وقتی خبر رو نوشتیم و روی ارسال کلیک کردیم ، برنامه از اون خبر یه فایل متنی می سازه و روی سرور با فرمت htm ذخیره می کنه ، بعد میاد می بینه براش چند تا خبر تعریف کردیم که نشون بده ، مثلا گفتیم ۱۰ تا خبر جدید رو زیر هم نشون بده ، برنامه از توی فولدر هاست ۱۰ تا خبر جدید رو می گیره و زیر هم لیست می کنه و ازشون یه فایل htm می سازه و جایگزین فایل اخبار می کنه و اینجوری می شه خبر ها رو بدون دیتابیس روی سایت نشون داد .

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

فعلا این برنامه رو برای استفاده شخصی وبرای  سایت هایی که طراحی می کنم به سفارش دهنده ها می دم ونمی شه به صورت عمومی عرضش کرد ، ولی قصد دارم در آینده با تغییراتی که می دم عمومیش کنم که همه بتونن ازش استفاده کنن ، ممکنه این طرح من خیلی طرح بی خود و نا موفقی باشه ولی واقعا جالبه و اینکه با این برنامه می شه بدون نیاز به دیتابیس ، یه سایت مدیریت محتوا داشت خیلی جالبه ! ( البته فعلا در حد بلند پروازیه ! شاید اصلا نشه خیلی کارا رو بدون دیتابیس انجام داد و قطعا هم نمی شه چون بی خود دیتابیس رو اختراع نکردن که ! یه چیزی می دونستن که اختراع شده ! )

شاید اگه این طرحمو علنی نمی کردم و برنامم رو با امکانات بیشتر می ساختم عرضه می کردم خیلی باحال تر بود ، ولی چون نمی رسم به این زودی ها توسعش بدم ، گفتم ایده شو بنویسم تا اگه کسی تونست با زبونای برنامه نویسیه قوی تر یه همچین برنامه ای بنویسه دست به کار شه ، البته اگه ایده شو از این وبلاگ گرفتین ، کپی رایت رو رعایت کنین و مردونه راستش رو بگین !

من الان دارم یه سایت که قراره از این برنامه استفاده کنه رو طراحی می کنم و وقتی تموم شد می گم برید ببنید و نظر بدید !

اگه خوشتون اومد این ها رو هم بخونید :
انتقال بدون دردسر فایل بین دو سرور
پروژه ارژنگ !
۷ روز بر من چه گذشت ؟!
یه لقمه هک جانانه !
گوگل و تحرمای بی خودیش !
نوشته بعدی
نوشته قبلی
به اشتراک بگذارید
نظر بدهید
  • نام: ضروری
  • ایمیل: ضروری
  • وبسایت:
  • پارسی را پاس بدارید و نظراتتان را با خط زیبای پارسی بنویسید. اگر صفحه کلید پارسی ندارید از بهنویس استفاده کنید.
    اگر می خواهید تصویرتان به صورت آواتار در کنار نظرتان نمایش داده شود از گراواتار استفاده کنید.
    ایمیلتون رو توی کادر زیر وارد کنید و عضو خبرنامه ی جنتلمن بشید تا همیشه آخرین مطالب رو توی ایمیلتون بخونید :
    اگه نمی خواید از طریق ایمیل جنتلمن رو دنبال کنید راه های دیگه ای هم برای اشتراک هست !
    آرشیو ماهانه
    برچسب ها
    لینک های خوشمزه
  • برو بچه ها بلاگر
  • دوستای مجازی
    تبلیغ
  • مطالبی که می نویسم آزاد هستند و انعکاس آن از هر طریقی مشکلی ندارد!
    Jentelman.com . Made With In IRAN . 2010- 2017