نسخه‌ی آزمایشی ITLPoll 3.1.0 با اسم رمز «دیوانه‌ساز» منتشر شد

خوب دوستان بالاخره کار اصلی بر روی این نسخه رو هم تموم کردم و آماده‌ی تست هست تا اشکالات احتمالی اون برطرف بشه.

از مهم‌ترین ویژگی‌ها و تغییرات این نسخه می‌توان به موارد زیر اشاره کرد :

  • امکان فعال‌کردن بیش از یک نظرسنجی : با این ویژگی یک سیستم نظرخواهی تمام‌عیار را خواهید داشت.
  • قرار گرفتن نظرسنجی‌ها در وضعیت‌های مختلفی که در عکس می‌بینید.
  • تغییرات اساسی در ساختار پایگاه اطلاعاتی و قالب‌ها و کدهای اصلی : بطوری که با نسخه‌های قبلی به هیچ وجه سازگار نیست.

واقعا تبدیل یک نظرسنجی ساده به یک سیستم نظرخواهی کامل ، کار بسیار سخت و طاقت‌فرسایی بود که بیش از ۳ روز وقت من رو به خودش به طور کامل گرفت.

اسم این نسخه رو « دیوانه‌ساز یا Dementor » به یاد داستان‌های زیبای هری‌پاتر گذاشتم.

از همه‌ی دوستان عزیز درخواست می‌کنم که این نسخه رو تست کنند و در صورت امکان اشکالات رو برای بنده بفرستند. ( پیشاپیش سپاسگزارم )

نکته : فعلا این نسخه رو برای آپلود در سرور سایت شما مناسب نیست. برای این منظور بایستی منتظر نسخه‌ی نهایی باشید.

برای دانلود این نسخه اینجا را کلیک کنیذ.

برای تست این نسخه : قسمت کاربریقسمت مدیریت ( نام‌کاربری و رمز عبور : demo )

=-=-=-=-=
Powered by Blogilo

مقاله : شروعی برای JSP در گنو/لینوکس

در این پست می‌خواهم مقاله‌ای با نام «شروعی برای JSP» رو که حاصل کار بنده هست معرفی کنم. این مقاله حاصل بیش از ۲ ماه کار بر روی JSP و بیشتر از ۴ روز تمام بر روی نگارش مقاله است. امیدوارم این مقاله بتواند شروعی برای کسانی باشد که می‌خواهند آزادی در نرم‌افزار را با زبان برنامه‌نویسی زیبای جاوا ترکیب کنند.

از همه‌ی شما خواهش می‌کنم همان طور که بنده حاصل پروژه‌های دانشجویی خودم را بی کم و کاست در اختیار شما قرار می‌دهم ، شما هم در نقل مطلب و منبع آن کوتاهی نکرده و هرجایی که آن را نقل می‌کنید ، منبع آن را ذکر کنید.

در این مقاله ابتدا به مقدمه‌ای در مورد JSP پرداخته شده و سپس به مقایسه‌ای مفصل بین سه زبان رقیب سمت سرور ( یعنی PHP ، JSP و ASP ) پرداخته شده است. بعد از آن سعی کرده‌ام تا به بررسی مختصری از سرولت (Servlet) در جاوا بپردازم. پس از بررسی سرولت که پیش نیاز ، JSP است به ورود به JSP پرداخته‌ام.

بعد از آن به بررسی قواعد JSP مانند موارد زیر پرداخته‌ام :

Directives -۱

۲- تعاریف (Declarations)

۳- عبارات (Expressions)

۴- Scriptlets

۵- توضیحات (Comments)

سپس به بحث مهم محدوده‌ی عملکرد اشیا پرداخته‌ام که امکان دستیابی به شیء‌های مختلف JSP در مناطق مختلف را مشخص می‌کند.

سپس بحث زیبای Beanهای جاوا مطرح شده است. با استفاده از Beanهای جاوا شما می‌توانید برنامه‌نویسی با استفاده از عناصر از قبل تولید شده را در واقع تجربه کنید. در این مقاله چندین مثال با استفاده از Java Beans بررسی شده مانند نحوه‌ی گرفتن عناصر فرم‌ها و مقداردهی آن‌ها.

» ادامه مطلب

۶ ترفند در PHP که ممکن است تا حالا انجام نداده باشید !

با وجود اینکه خودم سال‌هاست PHP کار می‌کنم اما مطالب کمی در مورد PHP در این وبلاگ می‌نویسم. دلیلش رو نمی‌دونم ولی شاید این ترجمه بتونه من رو در نوشتن دوباره‌ی مطالب در مورد

PHP

PHP کمک کنه.
این ترفندها رو شاید تا حالا دیده باشید ولی برای کاربرانی که می‌خواهند تازه شروع کنند به یادگیری PHP می‌تونه خیلی مفید و جذاب باشه. خوب شروع می‌کنیم.

ترفند ۱ : شمارش کاراکترهای یک رشته

اغلب برنامه‌نویسان برای این کار از تابع strlen() استفاده می‌کنند اما یک راه حل راحت‌تر وجود داره. البته در این روش بایستی تعداد کاراکتری که می‌خواهید کنترل کنید را داشته باشید.

<?php
$string = ‘testing’;

if(isset($string[6]))
echo “The string ‘$string’ is at least 7 characters long.”;
else
echo “The string ‘$string’ is less than 7 characters long.”;
?>

ترفند ۲ : استفاده از Echo به عنوان یک تابع

همیشه برای اتصال رشته‌ها در PHP معمول شده است که از نقطه (.) استفاده شود. اما شما در تابع echo می‌توانید رشته‌هایتان را به صورت کاما (,) از هم جدا کنید.

» ادامه مطلب

انتشار بروزرسانی ITLPoll 3.0.3 و تبریک سال نو

عرض سلام دوباره

توی آپدیت‌های openSUSE 11.2 دیدم که آخرین نسخه‌ی PHP یعنی ۵٫۳ وجود داره و توی این نسخه یه سری توابع به عنوان Deprecated شناخته می‌شوند و وقتی ITLPoll رو اجرا کردم دیدم که یک دوجین خطا گرفتم که بیشترش مربوط بود به تابع Date که می‌گفت باید حتما از TimeZone استفاده کنم ( و این طوری شرم‌آوره !! :D ) و اینکه در این نسخه از PHP تابع eregi و eregi_replace که برای پارس کردن template ها ازشون زیاد استفاده می‌کنم به عنوان deprecated شناخته می‌شن و باید از معادل قوی‌تر اونها ( یعنی preg_match ) استفاده بشه.
متاسفانه وقت کافی برای جایگرین کردن این معادل‌ها نداشتم و فقط مجبور شدم که error_reporting رو برای خطاهای زمان کامپایل و جدی تغییر بدم و دیگه این خطاها رو نگیرم. ولی حتما این موارد رو برای نسخه‌ی ۳٫۱ برطرف خواهم کرد. به هر حال این بروزرسانی مشکل اجرا در آخرین نسخه‌ی PHP یعنی ۵٫۳ رو برطرف می‌کنه.

هرچند که بنده اصلا IE رو به عنوان یه مرورگر استاندارد نمی‌شناسم ولی خوب به دلیل اینکه تعداد کاربران زیادی ازش استفاده می‌کنند مجبوریم که سازگاری با اون رو مد نظر داشته باشیم. قالب‌های قسمت مدیریت رو وقتی با IE مرور می‌کردم ناهماهنگی تقریبا زیادی وجود داشت ( نه از جهت کد بلکه از جهت هوشمند نبودن IE‌!!). مثلا یه چیز جالب این بود که دو تا table تو در تو وجود داشته باشه ، جدول داخلی حتما می‌بایست کمتر از ۹۲ درصد عرض داشته باشه وگرنه از جدول اولی میزنه بیرون !!! برای خودمم خیلی جالب بود که اینقدر خنگ تشریف دارن. به هر حال شاید مشکل از نوع قالب سیستم بنده باشه ولی IE همیشه خودش رو این جوری به همگان اثبات کرده. در نهایت اینکه همه‌ی ناهماهنگی‌ها رو با آخرین نسخه‌ی IE برطرف کردم.

ویژگی Redirect برای برگشت به قسمتی که مدیران سیستم بوده‌اند ( البته بعد از لاگین ). مثلا یه کاربر Admin در قسمت مدیریت قرار داره و مدت بیکاریش بیشتر از ۲۰ دقیقه باشه ، کوکی‌اش منقضی میشه و صفحه‌ی لاگین براش ظاهر می‌شه. حالا باید اگه خواست دوباره وارد بشه به همون صفحه‌ی قبلی وارد بشه که در این نسخه اضافه‌ش کردم !
قسمت NoScript قالب‌ها هم قالب جالبی نداشت که اون رو هم تغییر دادم.

و یه سری تغییرات جزیی در کد نصاب و تغییر آدرس‌های HomePage موجود به http://www.itlpoll.com
برای دریافت : این نسخه به سایت رسمی اون مراجعه کنید.
برای بروزرسانی : کافیه فقط فایل‌های موجود رو Overwrite کنید.

ــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ

در نهایت : پیشاپیش نوروز ۱۳۸۹ هجری شمسی رو به همه‌ی عزیزان هموطنم تبریک میگم. آرزوی بهترین‌ها رو براتون دارم.

گوگل کروم بتا برای لینوکس منتشر شد ( لینک دانلود غیرمستقیم اضافه شد )

خیلی وقت بود چیزی ننوشته بودم ، گفتم به این بهانه یه چیزی بنویسم !

در سایت Linux.com آمده است که کاربران لینوکس پس از مدت‌ها انتظار می‌توانند نسخه‌ی رسمی گوگل کروم را به‌جای Chromium در رایانه‌ی خودشان داشته باشند.

بنابراین بنده هم دانلود کردم که فعلا دانلود برای توزیع‌های دبیان ، ابونتو ، فدورا و اوپن‌سوزه امکان پذیر هست و همچنین نسخه‌های ۳۲ و ۶۴ بیتی هم پشتیبانی می‌شوند.

البته نکته‌ی جالب دیگه مثل تمام محصولات دیگر گوگل امکان دانلود از ایران وجود ندارد ( فایل رو براتون توی ۴Shared آپلود کردم )

بعد از دانلود و نصب واقعیتش انتظار داشتم که مشکلاتی که با زبان فارسی وجود داشت برطرف شده‌باشند اما متاسفانه دقیقا مثل آخرین نسخه‌ی کرومیوم با Encoding فارسی در Utf8 مشکل داره. ( عکس رو ببینید )

امیدوارم در آینده این مشکل برطرف بشه.

دانلود بسته‌ی دبیان از سایت ۴shared : از اینجا

لینک دانلود مستقیم از گوگل : اینجا

پ.ن ۱ : مشکلاتی که با فارسی داره : پرانتزهای فارسی برعکس چاپ می‌شوند. فاصله‌ی مجازی به صورت یک پایپ (|) نمایش داده می‌شود و فاصله‌های اصلی در Utf-8 به صورت ستاره ظاهر می‌شوند.

پ.ن۲: هیچ مرورگری فایرفاکس نمیشه !! :دی

یک تشکر و آموزش نحوه‌ی ساخت هاست مجازی در Apache

عرض سلام دوباره

اول اینکه از حمایت شما از ITLPoll به صورت دانلود و تست آن تشکر می‌کنم به طوری که پس از گذشت حدود ۳ ماه از انتشار نسخه‌ی سوم آن حدود ۸۵۰ بار دانلود شده است. که برای یک سیستم نظرسنجی تحت وب رقم قابل ملاحظه‌ای است.

اما در این مقاله می‌خواهیم نحوه‌ی ایجاد یک هاست مجازی در Apache را توضیح دهیم. برای مثال می‌خواهیم کاری کنیم که به‌جای نوشتن http://localhost در مرورگرمان آدرس http://my-script را وارد کرده و برنامه‌ی خود را در این هاست مجازی اجرا کنیم.

فایل httpd.conf را باز کنید ( بسته به سیستمی که استفاده می‌کنید مسیر آن متفاوت خواهد بود مثلا اگر از XAMPP استفاده می‌کنید این فایل در مسیر /opt/lampp/etc قرار دارد و یا اگر به صورت پیشفرض نصب کرده‌اید در مسیر /etc/httpd و یا /etc/apache2 قرار دارد. ) سپس خطوط زیر را به انتهای این فایل اضافه کنید :

<VirtualHost 127.0.0.1>

ServerName my-script

DocumentRoot /opt/lampp/my-script

ServerPath /my-script

</VirtualHost>

» ادامه مطلب

آموزش نمایش تصاویر مستقل از فایل تصویری در PHP

خیلی وقت بود که چیزی در مورد PHP ننوشته بودم. البته منظورم در مورد آموزش PHP بود و گرنه خبرهای اون رو که هیچ وقت از دست نمی‌دم !

حتما خیلی از برنامه‌های نوشته‌شده با PHP را دیده‌اید که بدون اینکه فایلی تصphpimgویری در پوشه‌ی برنامه‌شان داشته باشند ، فایل‌های تصویری زیادی را در صفحه‌‌های HTML خودشان قرار داده‌اند. این یکی از تکنیک‌های PHP است. یعنی بجای ذخیره کردن فایل‌های تصویری می‌توانید آن‌ها را در متغیرهایی در برنامه‌ی PHP خود ذخیره کنید. البته همان طور که حدس زده‌اید این ترفند برای فایل‌های گرافیکی با حجم بالا اصلا به‌صرفه نیست. بیشتر برای لوگوهای برنامه‌ی خود می‌توانید از آن استفاده کنید.

یک مثال کامل از این ترفند را در فایلی در انتهای آموزش جهت دانلود قرار داده شده است که می‌توانید آن را دانلود کنید.

برای این کار ابتدا یک فایل تصویری ( ترجیحا PNG چون کد PHP را متناسب آن نوشته‌ایم ) را انتخاب کنید. سپس یک فولدر در وب سرور خود درست کنید. و فایلی با نام createcode.php را بسازید. در این فایل می‌خواهیم محتویات فایل تصویری را خوانده و سپس آن را با استفاده از تابع base64_encode رمزنگاری کنیم. چرا که اگر از این تابع استفاده نکنید ، در هنگام ذخیره کردن فایل PHP با encoding فایلتان مشکل پیدا خواهید کرد.

» ادامه مطلب

معجزه‌ی دیگر PHP سیستم‌عامل مبتنی بر وب eyeOS

eyeOSlogo

با سلام ( برگشتی دوباره بعد از امتحانات ! )‌

قبل از هرچیز این ScreenShot رو ببینید ( لطفا ! )

بار دیگر PHP قابلیت و کارایی خود را در معجزه‌ای و در واقع سیستم‌عاملی به‌نام eyeOS نشان می‌دهد. برخلاف تحلیل‌های ( نه‌چندان ) علمی مایکروسافت‌زدگان ( همان غرب زدگان ! )‌ که PHP به خاطر نداشتن فضای نام (Name Space) و نداشتن فایل باینری جهت کاهش سربار سیستم ( و … ) (اینجا را ببینید ) پروژه‌ای بزرگ به نام eyeOS با مجوز AGPL نسخه سوم منتشر شده است. این سیستم‌عامل تحت وب تمامی آنچه از یک سیستم‌عامل قابل دسترس از همه‌جا ( ازطریق اینترنت ) انتظار دارید را فراهم می‌کند. از نرم‌افزار اداری Office گرفته تا Widget های دسکتاپ !

» ادامه مطلب