With
Firefox Get A Better Web Experience
(175 كليك) چرا هنوز خیلیها از اینترنت اکسپلورر 6 استفاده میکنند؟!
(287 كليك) مقاله جامعی در مورد بهینهسازی صفحات وب برای موتورهای جستجو
(293 كليك) مجموعه جدید و رایگانی از آیکونهای کاملا پیکسلی
July 17, 2005 at 06:20 pm
در پست قبلی مقدمه ای در مورد CSS Hacks بیان شد، حال در این پست قصد داریم راه حل باکلاس و بسیار جالبی را به کمک php برای شناسایی مرورگر و ارسال کدهای CSS متناسب با آن ارائه کنیم. برای آنکه بتوانیم دستورات PHP را در یک فایل css بکار ببریم، نیازمند این هستیم که از طریق شیوه نامه پیوندی (Linked Stylesheet) محتویات فایلی با پسوند php را در برچسب head صفحه، به شکل زیر قرار دهیم:
-
<link rel="stylesheet" href="styles.php" type="text/css" />
اکنون شما باید فایلی با نام styles.php در همان دایرکتوری که فایل صفحه تان قرار دارد ایجاد کنید. در اولین خط این فایل، با استفاده از تابع header نوع محتویات به صورت text/css تعریف می شود. هنگامی که این فایل در صفحه فراخوانی می شود اطلاعاتی از مرورگر کاربر به وسیله پارامترهای از پیش تعریف شده در php دریافت می شود و سپس کد css متناسب با آن مرورگر، ارسال خواهد شد. بدین منظور تابع detect را جهت شناسایی مرورگر، نسخه آن و پلتفرم (نوع سیستم عامل) به شکل زیر تعریف می کنیم: ادامه مطلب ...
July 15, 2005 at 08:28 pm
اگر شما یک طراح وب هستید یا در این شاخه فعالیت می کنید، شاید تاکنون متوجه این مطلب شده باشید که در میان مرورگرهای متفاوت هر کدام به نحوی طرحتان را نمایش می دهند. برای مثال شما بادقت پیکسل ها را کم و زیاد و مو به مو تمام نقص ها را برای مرورگری مثل فایرفاکس برطرف می کنید. اما در هنگام ارائه طرحتان در یک مرورگر دیگر مثل اینترنت اکسپلرر، صفحات بهم می ریزند!
طراحی با CSS نیز از این قاعده مستثنا نیست. برعکس در بیشتر موارد به نظر می رسد مرورگرها بیشتر با طرح بندی برپایه جدول (table based layout) سازگارند. شاید یکی از این دلایل این باشد که هنوز چندین نام بزرگ در طراحی صفحاتشان از طرح بندی بر مبنای جدول بهره می گیرند.
برای حل این مشکلات بسیاری از طراحان CSS از تنظیماتی در کدهایشان بهره می گیرند که CSS Hack نام دارد. در واقع CSS Hack راهی است برای اینکه برخی از مرورگرها را مجبور کنیم تا کدهای css معینی را نادیده بگیرند. ما این کا را با قرار دادن کاراکترهای و نشانه های ویژه ای در فایل CSS تعریف می کنیم. برای مثال، یکی از بدترین حالات در هنگام طراحی با CSS، مدل جعبه ایی (Box model) است. IE5 و IE5.5 ویندوز در CSS1 این مدل را با گذاشتن لبه و لایه گذاری (border and padding) درون عرض مشخص شده بجای بیرون، به غلط تفسیر می کنند.
برای مثال کد زیر را در نظر بگیرید که بر اساس آن در همه مرورگرها برای عنصر header عرضی به پهنای 10em خواهیم داشت بجز IE5 که عرضی به پهنای 5em را بر می گرداند.
( IE5 دو مقدار padding و border را در هنگام برآورد طول در هم می آمیزد) ادامه مطلب ...
July 13, 2005 at 06:09 pm
این روزها به مانند تابستان گذشته بد جور جو پی اچ پی بازی ام گل کرده است. هر چند نصب دو سه کتابخانه منجمله pear کلافه ام کرده اند اما باز نمی شود دست از آن برداشت. هر چه پیش تر می روی و در عمل آن را تجربه می کنی، لب به اقرار می گشایی که شگفتا عجب زبانی است این! اگر از این زبان هیچ نمی دانید و در پی راهی برای فراگیری آن هستید کتاب PHP/MySQL Programming for the Absolute Beginner می تواند منبعی عالی برای شما باشد. اگر هم با مقدمات و اصول برنامه نویسی php آشنا هستید، کتاب Advanced PHP for Web Professionals در نوع خود بی نظیر است.
بخصوص اگر از وردپرس یا سیستم های دیگر تحت php/mysql برای مدیریت محتوای خود استفاده می کنید بر شما لازم است که php را فراگیرید. البته کار با دیگر زبان های تحت وب همچون ASP نیز جالب بنظر می رسد البته اگر حوصله یادگیری اش را داشته باشید. چرا که این زبان به دانستن زبان های VBScript و CGI که خود نیازمند فراگیری C یا Perl می باشد، محتاج است. برای آموزش زبان ASP کتاب ASP.Net Web Developers Guide واقعا جامع و کامل است. افسوس که سرعت ناچیز کانکشن من قدرت آپلود این کتاب ها را ندارد. اگر $ دارید بخرید اگر ندارید هم عکس جلدش را تماشا کنید. اگر مشتاق آموختن این زبان ها هستید دست بکار شوید، تابستان فرصت مناسبی است.
بسیاری از دوستان در ایمیل ها یا کامنت شاکی از این هستند که پلاگین های معرفی شده برای وردپرس درست نصب نمی شود یا در کارایی اشکال دارد. باید خدمت شما عرض شود که اگر نگاهی به تاریخ پست و ورژن آن روز وردپرس بیندازید مشکل حل است. اغلب پلاگین هایی که معرفی کرده ام مربوط به زمانی است که هنوز نسخه 1.5 و بالاتر از آن عرضه نشده بود. همانگونه که می دانید در نسخه 1.5 و بالاتر از آن تغیرات چشمگیری ایجاد شده است. خوشبختانه بیشتر پست های مربوطه، لینک منبع پلاگین را شامل هستند و اگر نداشتند حتما در فایل read me آن ها موجود است. برای رفع مشکلتان بهتر است به سایت نویسنده پلاگین سر بزنید و نسخه های جدید پلاگین را که با ورژن وردپرس شما بخواند دریافت کنید.
July 7, 2005 at 04:13 pm
متدهای تصدیق هویت کاربر یا همان Authentication Schemes یکی از مباحث جذاب در برنامه نویسی php است که باید نکات ایمنی را دقیقا در آن لحاظ کرد. روش های گوناگونی بدین منظور موجود است که با توجه به سطح امنیت مورد نیاز می توانید از آن ها استفاده کنید. مرسوم ترین روش برای این کار استفاده از یک بانک اطلاعاتی برای نگهداری اطلاعات کاربران است. مسلما در تصدیق هویت مبنی بر پایگاه داده ما قابلیت انعطاف و کارایی بیشری در مقایسه با کار با فایل ها به عنوان نگهدارنده اطلاعات خواهیم داشت. برای مثال کار با توابعی همچون md5 و crypt را به عنوان پنهان سازی اطلاعات در نظر بگیرید!
در این پست قصد داریم اسکریپتی بنویسم که با توجه به اطلاعات موجود در پایگاه داده Mysql هویت کاربر را تشخیص دهد. بعلت آنکه از سطح مقدماتی مقاله خارج نشویم اطلاعات را به صورت متنی در فیلد های جدول ذخیره می کنیم، اما برای رعایت نکات امنیتی حتما باید کلمه عبور را رمزنگاری کرد. query مورد نیاز برای ساخت جدول به شکل زیر است:
-
CREATE TABLE users (
-
id INT NOT NULL,
-
username VARCHAR(16),
-
password VARCHAR(8),
-
PRIMARY KEY(id));
-
INSERT INTO `users` VALUES (0, 'alvan', 'alvan');
همان گونه که مشاهده می کنید این query یک جدول بنام users ایجاد می کند که دارای سه فیلد id،username و password است. برای هر فیلد مقداری را وارد می کنیم. دقت کنید که شناسه کاربری و اسم رمز در این مقادیر برابر alvan است.در مرحله بعدی برای اتصال به پایگاه داده یک تابع جدید بنام connect مطابق زیر ایجاد می کنیم: ادامه مطلب ...
Page: 1 |
... |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
... |
36