<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>مینی پروگرامر</title>
	<atom:link href="http://miniprogrammer.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://miniprogrammer.com</link>
	<description>روز نویس های نیما نوری در حوضه آی تی &#124; تکنولوژی</description>
	<lastBuildDate>Tue, 03 May 2011 05:34:41 +0000</lastBuildDate>
	<language>fa</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.2</generator>
		<item>
		<title>خدمات بانکداری همراه ، چند مزیت و یک چالش !</title>
		<link>http://miniprogrammer.com/mobile-banking-security-miniprogrammer-niman2d/</link>
		<comments>http://miniprogrammer.com/mobile-banking-security-miniprogrammer-niman2d/#comments</comments>
		<pubDate>Mon, 02 May 2011 21:12:37 +0000</pubDate>
		<dc:creator>n2d</dc:creator>
				<category><![CDATA[امنیت]]></category>
		<category><![CDATA[تازه ها]]></category>
		<category><![CDATA[تلفن همراه]]></category>
		<category><![CDATA[متفرقه]]></category>
		<category><![CDATA[ایرانسل]]></category>
		<category><![CDATA[بانک سامان]]></category>
		<category><![CDATA[بانکداری الکترونیکی]]></category>
		<category><![CDATA[خدمات بانکداری مدرن]]></category>
		<category><![CDATA[هک]]></category>

		<guid isPermaLink="false">http://miniprogrammer.com/?p=91</guid>
		<description><![CDATA[سامانه همراه ۲۴ سامان ابزار نوینی در صنعت بانکداری وپرداخت الکترونیک کشور است که با بهره گیری از جدیدترین تکنولوژی های شبکه تلفن همراه ، تحولی در زمینه ارائه خدمات بانکی به کاربران تلفن همراه ایجاد می کند برای استفاده از این سامانه کافی است کاربر تلفن همراه ، دارنده یک کارت بانکی باشد تا [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;" dir="rtl">سامانه همراه ۲۴ سامان ابزار نوینی در صنعت بانکداری وپرداخت الکترونیک کشور است که  با بهره گیری از جدیدترین تکنولوژی های شبکه تلفن همراه          ، تحولی در زمینه ارائه خدمات بانکی به کاربران تلفن همراه ایجاد می کند</p>
<p style="text-align: justify;" dir="rtl">برای استفاده از این سامانه کافی است کاربر تلفن همراه ، دارنده یک کارت بانکی باشد تا بتواند با گرفتن شماره          #۷۲۴* در هر ساعت از شبانه روز و در هر مکان ، بدون          پرداخت هزینه سرویس، عملیات بانکی خود را در حداقل زمان انجام دهد.</p>
<p style="text-align: justify;" dir="rtl">سرویس حقیقی همراه پرداخت برای نخستین بار در کشور با همکاری سه مجموعه          <a href="http://www.sb24.com/">بانک سامان</a>، شرکت پ<a href="http://www.sep.ir/">رداخت الکترونیک سامان</a> و شرکت بین المللی         <a href="http://www.tkckish.ir/">TKC</a> راه اندازی شده است.</p>
<p style="text-align: justify;" dir="rtl">&nbsp;</p>
<p style="text-align: justify;" dir="rtl">این توضیحات مختصری هست که در سایت « سامانه همراه ۲۴ بانک سامان » در رابطه با سیستم ارائه شده &#8230;</p>
<p style="text-align: justify;" dir="rtl">اما اینکه این سیستم چی هست و به چه صورت عمل میکنه شاید برای خیلی از ماها سوال باشه که به راحتی میتونیم با عضویت در اون مشاهده کنیم .</p>
<p style="text-align: justify;" dir="rtl">شما به راحتی میتونید با تلفن همراه خودتون شماره #۷۲۴* رو بگیرید و این سرویس رو برای خودتون فعال کنید ، بعد از فعال شدن یک کد ثبت نام به همراه لینک ثبت نام ارائه میشه ، بعد از دریافت کد میتونید به <a href="https://mpay.samanepay.com/Login.aspx" target="_blank">این آدرس</a> مراجعه کنید و ثبت نام خودتون رو در سیستم کامل کنید !</p>
<p style="text-align: justify;" dir="rtl">اول به این میپردازیم که خدمات این سیستم چی هست ؟</p>
<p style="text-align: justify;" dir="rtl">شما پس از عضویت میتونید از یک سری خدمات بهره ببرید  : پرداخت قبوض ، خدمات بانکی ( مانده حساب و کارت به کارت ) ، خرید کارت شارژ و خرید کارت اینترنت (  شهر های تهران ، کرج و کیش ).</p>
<p style="text-align: justify;" dir="rtl">و اما روش کار &#8230;</p>
<p style="text-align: justify;" dir="rtl"><span id="more-91"></span></p>
<p style="text-align: justify;" dir="rtl">بعد از اینکه در این سیستم ثبت نام کردید ، از شما تقاضا میشه که اطلاعات کارت خودتون رو در اختیار سیستم قرار بدید ، از قبیل شماره ۱۶  رقمی کارت ، رمز دوم ( رمز اینترنتی ) ، رمز CVV2  و تاریخ پایان  اعتبار  کارت ،</p>
<p style="text-align: justify;" dir="rtl">خُب این سیستم میاد تمام اطلاعات شمارو دریافت میکنه و در دیتابیس خودش ذخیره میکنه . تا اینجا ثبت نام شما کامل شده ،</p>
<p style="text-align: justify;" dir="rtl">برای استفاده از این خدمات باید ابتدا با گوشی خودتون #۷۲۴* رو شماره گیری کنید تا لیست ِ خدمات برای شما نمایش داده بشه !</p>
<p style="text-align: justify;" dir="rtl">فرضاً برای خرید کارت شارژ باید به این صورت عمل کنید :</p>
<p style="text-align: justify;" dir="rtl">۱ . ۷۲۴#*</p>
<p style="text-align: justify;" dir="rtl">۲ . فروشگاه</p>
<p style="text-align: justify;" dir="rtl">۳ . خرید شارژ</p>
<p style="text-align: justify;" dir="rtl">۴ . ایرانسل</p>
<p style="text-align: justify;" dir="rtl">۵ . انتخاب نوع کارت</p>
<p style="text-align: justify;" dir="rtl">&nbsp;</p>
<p style="text-align: justify;" dir="rtl">به این صورت میتونید برای خرید کارت شارژ اقدام کنید و یا حالا برای دیگر سرویس ها هم شماره های دستوری دیگه رو بگیرید که بعد از عضویت به راحتی میتونید متوجه موضوع بشید !</p>
<p style="text-align: justify;" dir="rtl">&nbsp;</p>
<p style="text-align: justify;" dir="rtl">برخی مزایای سیستم :</p>
<p style="text-align: justify;" dir="rtl">بدون هزینه بودن &gt; در این سیستم شما با استفاده از کد های دستوری کارهاتون رو انجام میدید که برای شما هیچ هزینه ای ندارد ، چرا ؟ چون که<a href="http://miniprogrammer.com/wp-content/uploads/2011/05/saman-final.jpg.gif"><img class="alignleft size-full wp-image-92" title="saman-final.jpg" src="http://miniprogrammer.com/wp-content/uploads/2011/05/saman-final.jpg.gif" alt="" width="120" height="76" /></a> شما نه پیامکی ارسال میکنید و نه تماسی برقرار میکنید و نه از اینترنت همراه(GPRS)  استفاده کردید، پس هزینه ای در بر نخواهد داشت و حتی زمانی که خط ( اعتباری ) شما فاقد شارژ بود ، میتونید از سیستم استفاده کنید ( مثلاً برای خرید کارت شارژ ) .</p>
<p style="text-align: justify;" dir="rtl">دوم اینکه همه جا در دسترس شماست ! هرجا که تلفن همراه شما انتن بده ، و البته ۲۴ ساعته ، میتونید به راحتی انتقال کارت به کارت بدید و از سیستم لذت ببرید !</p>
<p style="text-align: justify;" dir="rtl">&nbsp;</p>
<p style="text-align: justify;" dir="rtl">اما سوالی که پیش میاد این هست که چرا سیستم باید تمام اطلاعات کارت مارو بگیره ؟</p>
<p style="text-align: justify;" dir="rtl">در این صورت به محض هک شدن ِ سیستم ، تمامی اطلاعات ِ کارت کاربران لو میره ! البته ، شکی نیست که اطلاعات به صورت کد شده در  دیتابیس ذخیره میشوند ، اما باز هم از دست هکر های کلاه سیاه در امان نیست !!</p>
<p style="text-align: justify;" dir="rtl">چرا سیستم به گونه ای عمل نمی کنه که مثلاً با یک صورت دستوری خاص زمان خرید از ما اطلاعات رو بگیرند ؟ به عنوان مثال ، شماره کارت و تاریخ انقضا را در سیستم ثبت کنیم و زمان ِ خرید ، تنها رمز دوم و CVV2 را از ما بخواهد ؟</p>
<p style="text-align: justify;" dir="rtl">در حال حاضر سیستم زمان استفاده از امکانات ، از شما مجدداً رمز دوم را میخواهد که برای جلوگیری از سو استفاده های احتمالی هست ، اما میشه گفت که باز هم از نظر هک شدن سرور و برملا شدن اطلاعات کاربران خطری وجود خواهد داشت ! شکی نیست که تدابیری اندیشیده شده است اما ، فراموش نکنیم که امنیت ۱۰۰% نیست و دست بالای دست بسیار است&#8230;<strong>بحث اینجاست که ، چه تدابیری ؟</strong></p>
<p style="text-align: justify;" dir="rtl">و البته ، امیدوارم تاریخچه هک شدن بانک های کشورمون را هنوز در یاد داشته باشید ، روش هک شدن بانک تجارت در چند سال ِ پیش که با نفوذ به سیستم بانکی ،  فرد ِ هکر موفق به هک کردن سایت شد ، هک شدن بانک ملی و . . . مواردی که مطمئناً نفوذ هایی صورت گرفته و هکر تنها برای لذت این کار رو کرده و سر و صدایی به پا نشده ! چون مبلغی جابه جا نشده &#8230; و فقط نفوذ و بالا بردن اطلاعات و سطح ِ علمی بوده&#8230;</p>
<p style="text-align: justify;" dir="rtl">&nbsp;</p>
<p style="text-align: justify;" dir="rtl">حال با این تفاسیر ، این سوال باقی میمونه که چرا تمام اطلاعات در سیستم ثبت می شود&#8230;</p>
<p style="text-align: justify;" dir="rtl">&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://miniprogrammer.com/mobile-banking-security-miniprogrammer-niman2d/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>دزدی اینترنتی</title>
		<link>http://miniprogrammer.com/internet-fake-page-miniprogrammer-niman2d/</link>
		<comments>http://miniprogrammer.com/internet-fake-page-miniprogrammer-niman2d/#comments</comments>
		<pubDate>Thu, 28 Apr 2011 22:10:20 +0000</pubDate>
		<dc:creator>n2d</dc:creator>
				<category><![CDATA[متفرقه]]></category>
		<category><![CDATA[Fake Page]]></category>
		<category><![CDATA[Phishing]]></category>
		<category><![CDATA[فیشینگ]]></category>
		<category><![CDATA[مهندسی اجتماعی]]></category>
		<category><![CDATA[هک]]></category>
		<category><![CDATA[کارت بانک]]></category>

		<guid isPermaLink="false">http://miniprogrammer.com/?p=86</guid>
		<description><![CDATA[شاید خیلی از شماها با روش هک کردن FAKE PAGE اشنا باشید &#8230; FAKE PAGE یکی از روش های قدیمی هکر ها برای هک کردن اکانت های ایمیل ، سایت خاص ، کارت اعتباری و . . . . است که هکر با استفاده از یک صفحه شبیه  صفحه سایت هدف  ( مثلاً یاهو  میل [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;">شاید خیلی از شماها با روش هک کردن FAKE PAGE اشنا باشید &#8230;</p>
<p style="text-align: justify;">FAKE PAGE یکی از روش های قدیمی هکر ها برای هک کردن اکانت های ایمیل ، سایت خاص ، کارت اعتباری و . . . . است که هکر با استفاده از یک صفحه شبیه  صفحه سایت هدف  ( مثلاً یاهو  میل ) از کاربر درخواست نام کاربری و کلمه عبور وی را میکند و بعد از اینکه کاربر اطلاعات مورد درخواستی را وارد کرد ، اطلاعات وی برای هکر ارسال شده و گاهاً به صفحه واقعی یاهو منتقل شده و یا با اخطار ِ اشتباه بودن اطلاعات مواجه می شوند.</p>
<p style="text-align: justify;">این یکی از مجموعه روش های مهندسی اجتماعی هست که در شکل های مختلف شاهد  FAKE PAGE هستیم&#8230;</p>
<p style="text-align: justify;">متاسفانه این روزها شاهد روش جدید « دزدی » هستیم ، شخصی که نمیشه به اون گفت هکر ( به دلیل منش ِ یک هکر که برای خود مرامنامه<a href="../wp-content/uploads/2011/04/6a00e54f302c0588330120a8af4aef970b-800wi.jpg"><img class="alignleft" title="OLYMPUS DIGITAL CAMERA" src="../wp-content/uploads/2011/04/6a00e54f302c0588330120a8af4aef970b-800wi-150x150.jpg" alt="" width="150" height="150" /></a> هایی دارند ) ، بهتره بگیم « دزد » ، با ایجاد یک سایت خرید کارت شارژ ، اقدام به فروش کارت شارژ میکنند ولی در زمان پرداخت ، به صفحه بانک منتقل نشده و به صفحه ای جعلی ارجاع داده می شوند !</p>
<p style="text-align: justify;">زمانی که کاربر اطلاعات مربوط به کارت خود را وارد می کند ، این اطلاعات برای شخص سازنده ارسال شده و از این پس می تواند با استفاده از اطلاعات کارت ِ قربانی ، خرید های خود را انجام دهد&#8230;.</p>
<p style="text-align: justify;">بهترین روش برای جلوگیری از این روش این هست که زمانی که میخواید اطلاعات خاص ، مانند نام کاربری ، کلمه عبور و یا اطلاعات کارت اعتباری خود را وارد نمایید ، حتما به آدرس صفحه جاری ( صفحه ای که در آن هستید ) دقت کنید !</p>
<p style="text-align: justify;">سرویس های ایمیل و همینطور دروازه بانک های مختلف برای پرداخت ، از SSL استفاده میکنند ! یعنی صفحه ای که در آن حضور دارید باید با HTTPS شروع شود !</p>
<p style="text-align: justify;">همینطور در نظر داشته باشید که مثلاً زمان ورود به ایمیل خود در وب سایت یاهو ، حتماً در آدرس yahoo.com باشید و یا برای وب سایت cloob در آدرس cloob.com باشید .</p>
<p style="text-align: justify;">&nbsp;</p>
<p style="text-align: justify;">پ.ن : در رابطه با فیشینگ | Phishing تحقیق کنید .</p>
]]></content:encoded>
			<wfw:commentRss>http://miniprogrammer.com/internet-fake-page-miniprogrammer-niman2d/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>چند و چون ِ راه اندازی وب سایت  (۴)</title>
		<link>http://miniprogrammer.com/how-to-have-web-site-part4-miniprogrammer-niman2d/</link>
		<comments>http://miniprogrammer.com/how-to-have-web-site-part4-miniprogrammer-niman2d/#comments</comments>
		<pubDate>Wed, 23 Mar 2011 14:17:24 +0000</pubDate>
		<dc:creator>n2d</dc:creator>
				<category><![CDATA[طراحی وب]]></category>
		<category><![CDATA[CMS]]></category>
		<category><![CDATA[DotNetNuke]]></category>
		<category><![CDATA[Joomla]]></category>
		<category><![CDATA[PHP Nuke]]></category>
		<category><![CDATA[RashCMS]]></category>
		<category><![CDATA[Script]]></category>
		<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[جوملا]]></category>
		<category><![CDATA[راش سی ام اس]]></category>
		<category><![CDATA[نیوک]]></category>
		<category><![CDATA[وردپرس]]></category>

		<guid isPermaLink="false">http://miniprogrammer.com/?p=75</guid>
		<description><![CDATA[در پست قبل گفتیم که هم میتونیم خودمون مستقیماً طراحی سایت یاد بگیریم  و اقدام به راه اندازی وب سایت بکنیم ، هم اینکه میتونیم از سیستم های مدیریت محتوی که آماده موجود هست استفاده کنیم&#8230; خُب تصمیم گرفتم در این پست تعدادی از سی ام اس ( Content Managment System ) هارو معرفی کنم&#8230;. [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;">در پست قبل گفتیم که هم میتونیم خودمون  مستقیماً طراحی سایت یاد بگیریم  و اقدام به راه اندازی وب سایت بکنیم ، هم  اینکه میتونیم از سیستم های مدیریت محتوی که آماده موجود هست استفاده  کنیم&#8230;</p>
<p style="text-align: justify;">خُب تصمیم گرفتم در این پست تعدادی از سی ام اس ( Content Managment System ) هارو معرفی کنم&#8230;.</p>
<p style="text-align: justify;">&nbsp;</p>
<p style="text-align: justify;">اول از همه به معرفی سیستم میدریت محتوی وطنی میپردازیم که کار یکی از برنامه نویسان خوب ِ مشهد هست&#8230;<a href="http://miniprogrammer.com/wp-content/uploads/2011/03/cms.jpg"><img class="alignleft size-thumbnail wp-image-78" title="cms" src="http://miniprogrammer.com/wp-content/uploads/2011/03/cms-150x150.jpg" alt="" width="150" height="150" /></a></p>
<p style="text-align: justify;">سیستم مدیریت محتوی راش که قرار هست نسخه ۴ اون هم همین روزها منتشر بشه ( به امید خدا )</p>
<p style="text-align: justify;">این سیستم ، یک سیستم مدیریت محتوی هست که در عین سبکی و اینکه انعطاف پذیری بالایی هم دارد ، میتونه خیلی مفید و کارا واقع بشه .</p>
<p style="text-align: justify;">سیستمی کاملاً ماژول / قالب و زبان پذیر هست&#8230; !</p>
<p style="text-align: justify;">امیدواریم که در نسخه آینده اون شاهد تغییرات اساسی باشیم ،</p>
<p style="text-align: justify;">البته لازم به ذکر هست که تا به حال از ۳ نسخه منتشر شده ، هیچ باگی گزارش نشده است&#8230;</p>
<p style="text-align: justify;">&nbsp;</p>
<p style="text-align: justify;">لینک وب سایت ِ رسمی سیستم مدیریت محتوی راش :</p>
<p style="text-align: justify;"><a href="http://rashcms.com/">RashCMS Web Site</a></p>
<p style="text-align: justify;">بعد از سیستم مدیریت محتوی راش ، سیستم های بزرگ و معروفی رو معرفی میکنیم که در قدرت و کارایی اونها شکی نیست!</p>
<p style="text-align: justify;">&nbsp;</p>
<p style="text-align: justify;">&nbsp;</p>
<p style="text-align: justify;">اول از همه سیستم جوملا که خودم به شخصه این سیستم رو قبول دارم و واقعاً سیستم خوبی هست ،</p>
<p style="text-align: justify;">شکر خدا تیم فارسی سازی هم برای این سیستم مدیریت محتوی موجود هست که میتونید به آدرس زیر مراجعه کنید :</p>
<p style="text-align: justify;"><span style="text-decoration: underline;"><a href="http://joomfa.org/" target="_blank">جومفا</a></span></p>
<p style="text-align: justify;">&nbsp;</p>
<p style="text-align: justify;">خوبی  این سیستم این هست که در ایران پشتیبانی خوبی داره و افرادی که به جوملا  مسلط باشند زیاد هستند و در اکثر فُرُم های اسکریپت پشتیبانی برای اون  ارائه میشه &#8230;</p>
<p style="text-align: justify;">و همینطور از نظر قالب / افزونه / کامپوننت و . . . . هم موارد فارسی خیلی زیادی میتونید پیدا کنید و به کمبود برنمی خورید !</p>
<p style="text-align: justify;">&nbsp;</p>
<p style="text-align: justify;">سیستم  مدیریت محتوی Nuke هم هست که خُب اصلاً به نظرم سیستم جالبی نیست ! به نظر  من خیلی سیستم سنگینی هست و برای کاربر ازار دهنده هست ، در ایران اکثراً  برای سایت های موزیک مورد استفاده قرار میگیره&#8230;</p>
<p style="text-align: justify;">البته کسانی که به این سیستم مسلط هستند هم زیاد هست و به نوعی میشه گفت که طرفدارهای خاص خودش رو داره این سیستم .</p>
<p style="text-align: justify;"><a href="http://www.phpnuke.ir/">وب سایت نیوک فارسی</a></p>
<p style="text-align: justify;">در  کنار همه این ها میتونیم به سیستم قدرتمند WordPress اشاره کنیم که این  سیستم واقعاً قدرت بالایی داره و در کنار اون میتونیم از افزونه های واقعاً  کارا و فراوانش استفاده کنید .</p>
<p style="text-align: justify;">همینطور  از نظر قالب های آماده و موجود در وب واقعاً دست شما برای انتخاب باز هست و  میتونید از بین هزاران هزار قابل موجود ، با توجه به ذوغ و سلیقه خودتون  قالب رو انتخاب واستفاده کنید .</p>
<p style="text-align: justify;">این  سیستم بیشتر برای راه اندای وبلاگ شخصی مورد استفاده قرار میگیره اما میشه  وب سایت هایی با زمینه کاری دیگری هم با اون راه اندازی کرد .</p>
<p style="text-align: justify;">همونطور که این روزها میبینیم حتی فروشگاه هم با این سیستم راه اندازی کردند &#8230;</p>
<p style="text-align: justify;">&nbsp;</p>
<p style="text-align: justify;"><a href="http://wordpress.org/" target="_blank">وب سایت ورد پرس فارسی</a></p>
<p style="text-align: justify;">&nbsp;</p>
<p style="text-align: justify;">در  این بین سیستم های زیاد دیگه هم موجود هست ، مانند میترا که نسخه اولیه  جوملا بود و بعد از اون به صورت جداگانه از جوملا گسترش داده شده !</p>
<p style="text-align: justify;">سیستم هایی برای فروشگاه ( مانند <a href="http://p30google.blogsky.com/1390/01/03/post-19/www.ts.co.ir/portal/html-356.htm" target="_blank">پی ور</a> ) وجود داره و همینطور برای راه اندازی تالار گفتمان هم سیستم های بزرگی مانند ( <a href="http://p30google.blogsky.com/1390/01/03/post-19/www.mybbhelp.ir/" target="_blank">مای بی بی &#8211; MyBB</a> ) موجود هست .</p>
<p style="text-align: justify;">برای راه اندازی میکرو بلاگدهی هم سیستم هایی مانند ( <a href="http://www.sharetronix.ir/" target="_blank">شیر ترانیکس</a> ) موجود هست .</p>
<p style="text-align: justify;">&nbsp;</p>
<p style="text-align: justify;">و همینطور در زمینه های مختلف دیگر سیستم هیا دیگری موجود هست که میشه بنا به نیاز از اونها به بهترین نحو استفاده کرد .</p>
<p style="text-align: justify;">&nbsp;</p>
<p style="text-align: justify;">پ.ن:</p>
<p style="text-align: justify;">سیستم هایی که معرفی میکنم رایگان و اوپن سورس می باشد.</p>
]]></content:encoded>
			<wfw:commentRss>http://miniprogrammer.com/how-to-have-web-site-part4-miniprogrammer-niman2d/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>چند و چون ِ راه اندازی وب سایت  (۳)</title>
		<link>http://miniprogrammer.com/how-to-have-web-site-part3-miniprogrammer-niman2d/</link>
		<comments>http://miniprogrammer.com/how-to-have-web-site-part3-miniprogrammer-niman2d/#comments</comments>
		<pubDate>Sun, 21 Nov 2010 14:14:53 +0000</pubDate>
		<dc:creator>n2d</dc:creator>
				<category><![CDATA[طراحی وب]]></category>
		<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[CMS]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[personal web site]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[وب سایت]]></category>

		<guid isPermaLink="false">http://miniprogrammer.com/?p=73</guid>
		<description><![CDATA[پس از آشنایی با مسائل مربوط به سرور ، هاستینگ و دامنه ، نیاز هست کمی با نحوه طراحی سایت و برخی اصطلاحات آشنا بشیم . برای آشنایی با طراحی وب سایت اولین قدمی که باید برداشت ، آشنایی با زبان های برنامه نویسی تحت وب پایه هست ، مثل HTML  که بیشتر از اینکه [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;"><span style="font-family: tahoma,verdana,arial,helvetica,sans-serif;">پس از آشنایی با مسائل مربوط به سرور ، هاستینگ و دامنه ، نیاز هست کمی با نحوه طراحی سایت و برخی اصطلاحات آشنا بشیم .</span></p>
<p style="text-align: justify;"><span style="font-family: tahoma,verdana,arial,helvetica,sans-serif;">برای آشنایی با طراحی وب سایت اولین قدمی که باید برداشت ، آشنایی با زبان های برنامه نویسی تحت وب پایه هست ، مثل HTML  که بیشتر از اینکه به زبان برنامه نویسی شباهت داشته باشیه ، زبان ِ شکل و فرم دهی به متن هست ، البته با وجود نرم افزارهایی مانند Dreamweaverکه برای طراحی وب سایت های استاتیک-داینامیک استفاده میشه ، نیازی به فراگیری کامل HTML نیست ، اما آشنایی با اون خالی ازلطف نخواهد بود . </span></p>
<p style="text-align: justify;"><span style="font-family: tahoma,verdana,arial,helvetica,sans-serif;">پس از آشنایی با HTML ، فراگیری CSS و قدرت استفاده از اون یکی از مهمترین مسائل هست ، با استفاده از CSS میتوان به راحتی به صفحات HTML فرم و قالب داد ، در HTML دست طراح بسته و محدود به یک سری مسائل است که با استفاده از CSS می توان از آنها عبور کرد و به قالبی زیبا و شیک دست پیدا کرد . </span></p>
<p style="text-align: left;"><span style="font-family: tahoma,verdana,arial,helvetica,sans-serif;"><a href="http://fa.wikipedia.org/wiki/%D8%A7%DA%86_%D8%AA%DB%8C_%D8%A7%D9%85_%D8%A7%D9%84">HTML</a></span></p>
<p style="text-align: left;"><span style="font-family: tahoma,verdana,arial,helvetica,sans-serif;"><a href="http://fa.wikipedia.org/wiki/%D8%B3%DB%8C_%D8%A7%D8%B3_%D8%A7%D8%B3">CSS</a></span></p>
<p><span style="font-family: tahoma,verdana,arial,helvetica,sans-serif;"> </span></p>
<p style="text-align: justify;"><span style="font-family: tahoma,verdana,arial,helvetica,sans-serif;">پس از آشنایی با HTML و CSS به سمت یکی از زبان های برنامه نویسی سمت سرور میریم ، زبان هایی که به سایت های استاتیک جان و روح می بخشند و باعث میشن که سایت با کاربر در تعامل باشه ، مانند خیلی از سایت های دیگه که دارای عضویت و مراحل مختلف می باشد . </span></p>
<p style="text-align: justify;"><span style="font-family: tahoma,verdana,arial,helvetica,sans-serif;">صفحات HTML و CSS که مدیر یک وب سایت بر روی سرور هاستینگ خود ذخیره میکنه و در صورت درخواست یک کاربر ، برای وی ارسال خواهد شد ، عیناً صفحاتی هست که طراح با خلاقیت و ایده های خود اونهارو طراحی کرده ، و کاری که سرور انجام میده فقط از اونها نگهداری میکنه و در زمان درخواست یک کاربر صفحه مورد نظر رو برای کاربر میفرسته ، در حقیقت کد های صفحه رو برای کاربر ارسال میکنه و اون مرورگر کاربر هست که پس از دریافت کد ها اونهارو تفسیر میکنه وعیناً به کاربر نمایش می دهد . </span></p>
<p style="text-align: justify;"><span style="font-family: tahoma,verdana,arial,helvetica,sans-serif;">اما در زبان های برنامه نویسی سمت سرور مانند PHP و ASP  و . . .  زمانی که درخواست مشاهده یک صفحه PHP به سرور ارسال می شود و کاربر خواهان بازدید از صفحه ای مانند index.PHP هست ، سرور ابتدا صفحه رو کاملاً میخونه و با توجه به کدهای موجود در صفحه ، به نوعی اونرو معنی میکنه و بعد خروجی به صورت HTML به سمت کاربر ارسال میکند ، درحقیقت چیزی که کاربر میبینه فقط خروجی HTML هست نه خود سورس فایل های برنامه نویسی شده .</span></p>
<p style="text-align: justify;"><span style="font-family: tahoma,verdana,arial,helvetica,sans-serif;">اینکه هر شخص به سمت چه زبان برنامه نویسی جذب میشه ، بسته به علاقه داره ، و همینطور آشنایی که با اون زبان داره و به قول یکی از اساتیدم کسی که به سمت PHPمیره ، به سمت دنیای متن باز و OpenSource میره و یک جورایی همچین روحیه ای داره ( در این باره حرف زیاده:D  ) .</span></p>
<p><span style="font-family: tahoma,verdana,arial,helvetica,sans-serif;">دو نمونه از مطرح ترین زبان های برنامه نویسی سمت سرور : </span></p>
<p style="text-align: left;"><span style="font-family: tahoma,verdana,arial,helvetica,sans-serif;"><a href="http://fa.wikipedia.org/wiki/%D9%BE%DB%8C%E2%80%8C%D8%A7%DA%86%E2%80%8C%D9%BE%DB%8C_%28%D8%B2%D8%A8%D8%A7%D9%86_%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87%E2%80%8C%D9%86%D9%88%DB%8C%D8%B3%DB%8C%29">PHP</a></span></p>
<p style="text-align: left;"><a href="http://fa.wikipedia.org/wiki/%D8%A7%DB%8C%E2%80%8C%D8%A7%D8%B3%E2%80%8C%D9%BE%DB%8C%E2%80%8C%D8%AF%D8%A7%D8%AA%E2%80%8C%D9%86%D8%AA"><span style="font-family: tahoma,verdana,arial,helvetica,sans-serif;">ASP.NET</span></a></p>
<p><span style="font-family: tahoma,verdana,arial,helvetica,sans-serif;"><a href="http://fa.wikipedia.org/wiki/%D8%A7%DB%8C%E2%80%8C%D8%A7%D8%B3%E2%80%8C%D9%BE%DB%8C%E2%80%8C%D8%AF%D8%A7%D8%AA%E2%80%8C%D9%86%D8%AA"><br />
</a></span></p>
<p><span style="font-family: tahoma,verdana,arial,helvetica,sans-serif;"> </span></p>
<p><span style="font-family: tahoma,verdana,arial,helvetica,sans-serif;">که البته در وبلاگ آموزش PHP رو از روی کتب مختلف شروع کردم .</span></p>
<p><span style="font-family: tahoma,verdana,arial,helvetica,sans-serif;">در طراحی یک وب سایت علاوه بر زبان های بالا ، نیاز به فراگیری  زبان های دیگری مانند Javascript و . . . هم احساس میشه . </span></p>
<p style="text-align: justify;"><span style="font-family: tahoma,verdana,arial,helvetica,sans-serif;">این یک توضیح کوتاهی در رابطه با زبان های برنامه نویسی بود که در طراحی وب سایت باید با اونها آشنا بود ، البته در صورتی که تمایلی به یادگیری هیچیک از زبان های برنامه نویسی ندارید و یا اینکه وقت اونرو ندارید ، میتونید از سیستم های تحت وب موجود استفاده کنید که از این سیستم ها ، نمونه های رایگان و تجاری نیز موجود هست که بسته به نیاز شما میتوان از یک سیستم بهره برد ، که البته باز هم این سیستم ها با زبان های مختلف طراحی شدند که بیشترین تعداد سیستم های طراحی شده در زبان برنامه نویسی PHP هست .</span></p>
<p><span style="font-family: tahoma,verdana,arial,helvetica,sans-serif;">از این سیستم ها عموماً با نام سیستم مدیریت محتوی وب نام برده میشه . . . </span></p>
<p style="text-align: left;"><a href="http://fa.wikipedia.org/wiki/%D8%B3%DB%8C%E2%80%8C%D8%A7%D9%85%E2%80%8C%D8%A7%D8%B3"><span style="font-family: tahoma,verdana,arial,helvetica,sans-serif;">CMS</span></a></p>
<p><span style="font-family: tahoma,verdana,arial,helvetica,sans-serif;">اکثر سیستم های مدیریت محتوی قدرتمند ، سایت فارسی سازی معتبر و قدرتند دارند ، مانند جوملا ! </span></p>
]]></content:encoded>
			<wfw:commentRss>http://miniprogrammer.com/how-to-have-web-site-part3-miniprogrammer-niman2d/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>آموزش پی اچ پی &#8211; درس چهارم</title>
		<link>http://miniprogrammer.com/php-learning-part4-miniprogrammer-niman2d/</link>
		<comments>http://miniprogrammer.com/php-learning-part4-miniprogrammer-niman2d/#comments</comments>
		<pubDate>Sat, 20 Nov 2010 14:11:21 +0000</pubDate>
		<dc:creator>n2d</dc:creator>
				<category><![CDATA[طراحی وب]]></category>
		<category><![CDATA[پی اچ پی - PHP]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[آموزش]]></category>
		<category><![CDATA[طراحی]]></category>
		<category><![CDATA[پی اچ پی]]></category>
		<category><![CDATA[کد نویسی]]></category>

		<guid isPermaLink="false">http://miniprogrammer.com/?p=69</guid>
		<description><![CDATA[درس چهارم استفاده از توابع در این درس یاد میگیرید که چگونه می توان بخشهایی از کد که زیاد مورد استفاده قرار میگیرند را به توابعی تبدیل کرد که بتوان از آنها به دفعات در اسکریپت خود استفاده کرد . استفاده از توابع با استفاده از تابع (function) می توان عملیاتی که از چندین خط [...]]]></description>
			<content:encoded><![CDATA[<p>درس چهارم<br />
استفاده از توابع</p>
<div style="text-align: justify;">در  این درس یاد میگیرید که چگونه می توان بخشهایی از کد که زیاد مورد استفاده  قرار میگیرند را به توابعی تبدیل کرد که بتوان از آنها به دفعات در  اسکریپت خود استفاده کرد .<br />
استفاده از توابع<br />
با استفاده از تابع  (function) می توان عملیاتی که از چندین خط کد تشکیل شده است را به یک  روتین که تنها با یک تک دستور قابل فراخوانی است تبدیل کرد .<br />
در PHP  تعداد زیادی تابع از پیش تعریف شده وجود دارد که عملیات های مفید و متنوعی  را انجام می دهند . بعضی از این توابع در داخل خود زبان PHP کار گذاشته شده  اند ، اما بعضی دیگر از آنها که تخصصی ترند ، فقط در صورتی قابل دسترسی  هستند که در هنگام نصب PHP ملحقات خاص مربوط به آنها فعال شده باشد .<br />
دفترچه راهنمای اینترنتی PHP ( در آدرس <a href="http://php.net/manual" target="_blank">http://php.net/manual</a> ) یک مرجع بسیار ارزشمند است . در این دفترچه علاوه بر مطالبی که برای هر  یک از توابع PHP ارائه شده است ، نکات و مثال های مفیدی وجود دارد که از  طرف کاربران ارسال شده است و حتی خود شما نیز می توانید در صورت تمایل  توضیحات خود را برای آنها بفرستید .<br />
قبلاً از تابع date برای به دست آوردن تاریخ جاری به صورت یک رشته فرمت دهی شده استفاده کردیم ، به مثال زیر کمی بیشتر دقت کنیم :</div>
<div>echo date(‘j F Y&#8217;);</div>
<p>قالب کلی ( یا پیش نمونه ) این تابع در راهنمای PHP به صورت زیر آمده است :</p>
<div>
<div>
<div>کد:</div>
<div dir="ltr"><code>string date(string format [,int timestamp])</code></div>
</div>
</div>
<div style="text-align: justify;">این  بدان معنی است که تابع date یک آرگومان رشته ای به نام format و به طور  اختیاری یک آرگومان عددی صحیح ( integer ) به نام timestamp را دریافت می  کند .مقداری که این تابع بر میگرداند از نوع رشته ای است . در این مثال ‘j F  Y&#8217; به عنوان آرگومان format به تابع date فرستاده شده است ، اما آرگومان  timestamp حذف شده است . دستور echo رشته ای که توسط تابع dateبرگردانده می  شود را در خروجی نشان می دهد .<br />
n آرگومان به معنی ورودی است که به تابع برای انجام پروسس هایی ارسال می کنیم .</div>
<div>تعریف کردن تابع</div>
<div style="text-align: justify;">علاوه  بر توابع از پیش تعریف شده ، PHP به شما اجازه می دهد خودتان تابعی را  تعریف کنید ، اینکار چند مزیت مهم دارد : اول آنکه اگر بخواهید از یک قطعه  کد به دفعات در اسکریپت خود استفاده کنید دیگر مجبور یستید آن را چندین بار  تایپ کنید ، ثانیاً استفاده از توابع شخصی باعث می شود <a href="http://miniprogrammer.com/wp-content/uploads/2011/04/php-logo11.jpg"><img class="alignleft size-thumbnail wp-image-70" title="php-logo1" src="http://miniprogrammer.com/wp-content/uploads/2011/04/php-logo11-150x150.jpg" alt="" width="150" height="150" /></a>که تغییر و ویرایش  اسکریپت ها آسانتر شود . اگر زمانی بخواهید نحوه انجام عملی را در اسکریپت  خود تغییر دهید ، فقط کافی است یکبار کد برنامه را در تعریف تابع اصلاح  کنید و دیگر مجبور نیستید آن را در هر جایی که از اسکریپت که آمده تغییر  دهید .<br />
n دسته بندی وظایف برنامه در قالب توابع مختلف ، اولین گام در  جهت مدوله کردن کد برنامه است . اهمیت این کار زمانی مشخص می شود که  اسکریپت های شما به تدریج طولانی تر و پیچیده تر می شوند و با این روش می  توانید آنها را به راحتی اداره و کنترل کنید .<br />
مثال ساده زیر نشان می دهد که چگونه می توان در PHP یک تابع تعریف کرد و از آن استفاده نمود :</div>
<div>
<div>
<div>کد PHP:</div>
<div>
<div dir="ltr"><code><span style="font-family: Tahoma;">function add_tax($amount</span><span style="font-family: Tahoma;">){$total=$amount * ۱٫۰۹</span><span style="font-family: Tahoma;">;<br />
Return $total</span><span style="font-family: Tahoma;">;<br />
}$price=16.00</span><span style="font-family: Tahoma;">;<br />
echo "Price befor tax : $price&lt;br&gt;"</span><span style="font-family: Tahoma;">;<br />
echo "Price after tax:"</span><span style="font-family: Tahoma;">;<br />
echo add_tax($price</span><span style="font-family: Tahoma;">); </span></code></div>
</div>
</div>
</div>
<div style="text-align: justify;">در  مثال بالا ، از کلمه کلیدی function برای تعریف تابعی به نام add_tax  استفاده شده است که هگام فراخوانی ، بلوک بعد از خود ( را که بین {} قرار  گرفته است ) را اجرا خواهد کرد . قراردادن $amount در داخل پرانتز در جلوی  نام تابع نشان می دهد که تابد add_tax یک آرگومان دریافت می کند که درون  متغیری به نام $amount ذحیره خواهد شد .<br />
خط اول در کد این تابع یک  محاسبه ساده است که $amount را در ۱٫۰۹ ضرب می کند که معادل اضافه کردن ۹  درصد به مقدار $amount است و حاصل را به $total نسبت می دهد . بعد از کلمه  کلیدی return مقداری که بایدپس از فراخوانی این تابع به داخل اسکریپت  برگردانده شود نوشته می شود .<br />
با اجرای این مثال ، خروجی زیر به دست خواهد آمد :</div>
<div>
<div>
<div>کد PHP:</div>
<div>
<div dir="ltr"><code><span style="font-family: Tahoma;">Price before tax: </span><span style="font-family: Tahoma;">16<br />
Price after tax: </span><span style="font-family: Tahoma;">17.44 </span></code></div>
</div>
</div>
</div>
<div style="text-align: justify;">این  نمونه ای از تابعی است که می توان از آن بارها در نقاط مختلف یک صفحه وب  استفاده کرد ، به عنوان مثال در صفحه ای که لیست تمام کالا های موجود در یک  فروشگاه اینترنتی را نشان می دهد ، می توانید تابع را یکبار برای هر کالا  احضار کنید تا قیمت آن بعد از افزودن مالیات به دست آید .<br />
اگر زمانی نرخ  مالیت تغییر کند فقط کافی است فرمودل این تابع را تغییر دهید تا تمام  قیمتهای نشان داده شده در این صفحه وب اصلاح شود .<br />
ارگومانها و مقادیر برگشتی<br />
برای  فراخوانی یا احضار یک تابع باید نام تابع و پس از آن لیستک آرگومانها را  در داخل پرانتز بنویسید . اگر بیش از یک آرگومان دارید ، باید آنها را به  وسیله کاما یا ویرگول از یکدیگر جدا کنید . برخی از توابع به هیچ آرگومانتی  نایز ندارند ، اما در این حالت نیز باید پرانتز ها را در جلوی نام تابع  قرار دهید .<br />
تابع از پیش تعریف شده phpinfo یک صفحه وب تولید می کند که  حاوی اطلاعات زیادی درباره ماژول PHP است . این تابع به هیچ آرگومانی نیاز  ندارد ، بنابراین می توان آن را در داخل یک اسکریپت به صورت زیر احضار کرد :</div>
<div>
<div>
<div>کد PHP:</div>
<div>
<div dir="ltr"><code><span style="font-family: Tahoma;">&lt;?php phpinfo(); ?&gt;</span></code></div>
</div>
</div>
</div>
<p style="text-align: justify;">اگر  این اسکریپت را ایجاد کرده و آدرس آن را در یک مرورگر وب وارد کنید ، صفحه  وبی ظاهر خواهد شد که حاوی اطلاعات سیستم و تنظیمات پیکربندی است .<br />
در رابطه با موارد بازگشت داده شده از یک تابع ، یا متغیر بازگشت داده می شود و یا مقدار بولی TRUE/ FALSE .<br />
توابعی مانند تابع if که پیشتر با آن آشنا شدید ، مقدار بولی باز میگرداند و تابع add_tax مقدار موجود در متغیر $total .<br />
مقادیر پیش فرض آرگومان ها</p>
<div>زمان  تعریف آرگومان های ورودی یک تابع ، می توان برای آنها مقادیر پیش فرض  تعریف نمود تا در صورتی که کاربر آرگومان را به تابع ارسال نکرد ، تابع  اجرا شده و جوابی به اسکریپت برگرداند ، به مثال زیر توجه کنید :</div>
<div>
<div>
<div>کد PHP:</div>
<div>
<div dir="ltr"><code><span style="font-family: Tahoma;">function hello($user='Visitor'</span><span style="font-family: Tahoma;">){<br />
echo "Welcome To MiniProgrammer, Dear $user"</span><span style="font-family: Tahoma;">;<br />
}hello(Nima</span><span style="font-family: Tahoma;">);<br />
echo "&lt;br&gt;"</span><span style="font-family: Tahoma;">;hello</span><span style="font-family: Tahoma;">(); </span></code></div>
</div>
</div>
</div>
<p>اگر این اسکریپت را در یک فایل PHP ذخیره و فراخوانی کنیم ، با خروجی زیر روبرو می شویم :</p>
<div>
<div>
<div>کد:</div>
<div dir="ltr"><code><span style="font-family: Tahoma;">Welcme To MiniProgrammer , Dear Nima<br />
Welcome To MiniProgrammer , Dear Visitor</span></code></div>
</div>
</div>
<div style="text-align: justify;">همانطور  که مشاهده می کنید ، در بار اول فراخوانی تابع ، چون به تابع مقدار Nima  را ارسال کرده ایم ، تابع را با مقدار ارسالی اجرا می کند و در حالت دوم که  مقداری با آن ارسال نکرده ایم با مقدار پیش فرض Visitor تابع را اجرا می  کند . به همین صورت می توان برای تمام آرگومان های توابع خود مقادیر پیشفرض  انتخاب نمود .<br />
حوضه متغیر ها<br />
متغیر  هایی که در بلوک ِ یک تابع مورد استفاده قرار میگیرد ، فقط در محدوده خود  تابع شناخته می شوند و در خارج از بلوک نمی توان از آنها استفاده نمود مگر  متغیر را با کلمه کلیدی global تعریف نمایید.</div>
]]></content:encoded>
			<wfw:commentRss>http://miniprogrammer.com/php-learning-part4-miniprogrammer-niman2d/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ajax زبان برنامه نویسی ؟</title>
		<link>http://miniprogrammer.com/ajax-programming-or-not-miniprogrammer-niman2d/</link>
		<comments>http://miniprogrammer.com/ajax-programming-or-not-miniprogrammer-niman2d/#comments</comments>
		<pubDate>Tue, 09 Nov 2010 14:07:41 +0000</pubDate>
		<dc:creator>n2d</dc:creator>
				<category><![CDATA[طراحی وب]]></category>
		<category><![CDATA[مفاهیم]]></category>
		<category><![CDATA[Ajax]]></category>
		<category><![CDATA[آژاکس]]></category>
		<category><![CDATA[اجاکس]]></category>
		<category><![CDATA[اژاکس]]></category>
		<category><![CDATA[ایجکس]]></category>
		<category><![CDATA[برنامه نویسی]]></category>

		<guid isPermaLink="false">http://miniprogrammer.com/?p=66</guid>
		<description><![CDATA[سلام خدمت همه اساتید عزیز و دوستان گل ِ نالرزی ، شاید برای خیلی از دوستان Ajax یک غول خیلی بزرگ باشه و سایت هایی رو که از Ajax استفاده کردند رو خیلی در سطح بالایی بدونند ! با اینکه از ظهور ا ِی جَکس ( Ajax ) به نسبت رشد ِ سریع IT مدت [...]]]></description>
			<content:encoded><![CDATA[<p>سلام خدمت همه اساتید عزیز و دوستان گل ِ نالرزی ،<br />
شاید برای خیلی از دوستان Ajax یک غول خیلی بزرگ باشه و سایت هایی رو که از Ajax استفاده کردند رو خیلی در سطح بالایی بدونند !<br />
با اینکه از ظهور ا ِی جَکس ( Ajax ) به نسبت رشد ِ سریع IT مدت زیادی میگذره ، اما خیلی از سایتها رو میبینیم که هنوز از اون استفاده نمی کنند .<br />
با توجه به اینکه خودم تسلط کامل به Ajax  ندارم ، اما بهتر دیدم در حدی که اطلاعات دارم یک توضیح مختصر در مورد این  روش دوست داشتنی بدم ( اساتید اگر اشکالی در پُست بود خوشحال میشم  راهنمایی کنند ) .<br />
Ajax رو میشه اینطور تلقی کرد که بر پایه JavaScript و DOM بنا شده و کُل ِ ماهیت Ajax به یک موجود کوچولو به نام XMLHttpRequest وابسته هست .<br />
ای جکس کار خیلی خاصی انجام نمیده ! فقط  باعث میشه که تمام سایت مجدداً  لود نشه و کاربر منتظر نمونه ،  پهنای باد اضافی مصرف نشه و به سرور هم بار  اضافی تحمیل نکنیم .<br />
شما در ای جکس برای اینکه یک پردازش رو به سرور بفرستی و جوابش رو به کاربر  نشون بدی ، بدون اینکه کل صفحه دوباره بارگذاری بشه ، چند مرحله خیلی ساده  دارید ،<br />
اول از همه ناحیه ای که نیاز به تغییر داره رو با استفاده از id و یا name تغیین می کنید . . .<br />
مثلا یک div با آی دی (مشخصه) reload_it ،<br />
حالا شما در کُد خودتون میای تعریف میکنی که وقتی کاربر فلان درخواست رو  داشت ، قسمتی از سایت دوباره بارگذاری بشه که نامش reload_it هست ( و  همینطور میتونید تعریف کنید در حین انجام درخواست loading نمایش داده بشه .  . .)</p>
<p>پس ، شما میای اول محل رو تعیین میکنی ،<br />
درخواست رو با یکی از متد های تعیین شده در Ajax میفرستی به سرور ،<br />
اسکریپت رو منتظر جواب نگه میداری،<br />
تعریف میکنی وقتی که جواب اومد ، این قسمت رو دوباره بارگذاری کنه و نتیجه به کاربر نمایش بده . . .<br />
در این بین هم تعریف میکنی اگر اشکالی مواجه شد چطور به کاربر اطلاع داده بشه .</p>
<p>عموماً کار با Ajax  برای کسانی که Javascript کار کرده باشند راحتتر بوده و بهتر میتونن از  این موجود ِ کوچولویه دوست داشتنی ، استفاده کنند ، همیشه پیشنهاد میکنند  که قبل از شروع به کار با Ajax گریزی به جاوااسکریپت داشته باشید .</p>
<p>این رو هم بگم که Ajax  یک زبان برنامه نویسی نیست !<br />
تنها یک روش هست برای اینکه شما با استفاده از جاوااسکریپت سیستم های مبتنی  بر وب رو بیشتر و بیشتر به سمت User Friendly ببری تا کاربر پسندتر بشه ،  یعنی اسکری<a href="http://miniprogrammer.com/wp-content/uploads/2011/04/Ajax-accessibility_485.jpg"><img class="alignleft size-thumbnail wp-image-67" title="Ajax-accessibility_485" src="http://miniprogrammer.com/wp-content/uploads/2011/04/Ajax-accessibility_485-150x150.jpg" alt="" width="150" height="150" /></a>پت های شما بیشتر و بیشتر به نرم افزارهای دسکتاپ شباهت داشته  باشند .<br />
این شباهت هم از این جهت هست که پاسخ کاربر در سیستم هایی که از Ajax استفاده میکنند سریعتر ارسال میشه ( چون نیاز به بارگذاری کامل صفحه نیست ) .<br />
میشه گفت یکی از اهداف پایه گذاری ای جکس این بود که کاربر وب هم بتونه  همانند کاربر دسکتاپ ، جواب ِ درخواست خودش رو به صورت لحظه ای ( حالا با  تاخیر خیلی خیلی کم ) مشاهده کنه که این امر هم مستلزم اینترنتی بهتر از  چیزی هست که الان ما داریم  . . .</p>
<p>یک کتاب در مورد Ajax داشتم ، اگر پیدا کنم برای دوستان قرار خواهم داد .</p>
<p>&nbsp;</p>
<p>این مقاله رو قبلا در نالرز منتشر کرده بودم و با توجه به اینکه میدونستم  خیلی ها هنوز از Ajax اطلاع ندارن ، اینجا هم منتشر کردم . . .<br />
امیدوارم مفید واقع بشه</p>
]]></content:encoded>
			<wfw:commentRss>http://miniprogrammer.com/ajax-programming-or-not-miniprogrammer-niman2d/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>آموزش پی اچ پی &#8211; درس سوم</title>
		<link>http://miniprogrammer.com/php-learning-part3-miniprogrammer-niman2d/</link>
		<comments>http://miniprogrammer.com/php-learning-part3-miniprogrammer-niman2d/#comments</comments>
		<pubDate>Mon, 08 Nov 2010 14:03:20 +0000</pubDate>
		<dc:creator>n2d</dc:creator>
				<category><![CDATA[طراحی وب]]></category>
		<category><![CDATA[پی اچ پی - PHP]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[آموزش]]></category>
		<category><![CDATA[اموزش]]></category>
		<category><![CDATA[پی اچ پی]]></category>

		<guid isPermaLink="false">http://miniprogrammer.com/?p=63</guid>
		<description><![CDATA[درس سوم &#160; کنترل اجرای اسکریپت در این درس با ساختارهای شرطی و حلقه ها که به شما امکان کنترل اجرای یک اسکریپت PHP را می دهند آشنا می شوید . دستورات شرطی در PHP دستور های شرطی با کلمه کلیدیif شروع می شود و به دنبال آن ، یک شرط در داخل پرانتز قرار [...]]]></description>
			<content:encoded><![CDATA[<p>درس سوم</p>
<p>&nbsp;</p>
<p>کنترل اجرای اسکریپت</p>
<div style="text-align: justify;">در این درس با ساختارهای شرطی و حلقه ها که به شما امکان کنترل اجرای یک اسکریپت PHP را می دهند آشنا می شوید .<br />
دستورات شرطی<br />
در  PHP دستور های شرطی با کلمه کلیدیif شروع می شود و به دنبال آن ، یک شرط  در داخل پرانتز قرار میگیرد . مثال زیر بررسی می کند که آیا مقدار متغیر  $number کوچکتر از ۱۰ است و تنها اگر این شرط برقرار باشد دستور echo  پیغامش را نشان می دهد :</div>
<div>
<div>
<div>کد PHP:</div>
<div>
<div dir="ltr"><code>$number= ۵;<br />
if ($number &lt; ۱۰){<br />
echo "$number is less than ten";<br />
} </code></div>
</div>
</div>
</div>
<p>&nbsp;</p>
<div style="text-align: justify;">شرط  $number&lt;10 در صورتی برقرار خواهد بود که مقدار سمت چپ علامت &gt;  کوچکتر از مقدار سمت راست آن باشد . اگر این شرط درست ( TRUE ) باشد آنگاه  کد درون آکولادها اجرا می شود و در غیر این صورت اجرای اسکریپت از دستور  بعد از آکولاد ادامه می یابد .<a href="http://miniprogrammer.com/wp-content/uploads/2011/04/php-logo1.jpg"><img class="alignleft size-thumbnail wp-image-64" title="php-logo1" src="http://miniprogrammer.com/wp-content/uploads/2011/04/php-logo1-150x150.jpg" alt="" width="150" height="150" /></a><br />
n با توجه به پاراگراف بالا ، مقدار  بازگشت داده شده از یک دستور شرطی یک مقدار بولی ( Boolean ) است ، یعنی  TRUE و یا FALSE که تعیین می کند آیا دستور درون بدنه آن اجرا شود و یا خیر  . . . این نکته را در نظر داشته باشید که در PHP TRUE برابر با ۱ و FALSE  برابر با ۰ می باشد .</div>
<p>عملگر های شرطی</p>
<div style="text-align: justify;">PHP  به شما اجازه می دهد مقایسه های مختلفی را بید دو مقدار انجام دهید و آنها  را از لحاظ تساوی ، عدم تساوی یا کوچکتر و بزرگتر چک کنید . در زیر  عملگرهای شرطی PHP نشان داده شده اند :<br />
== برابر است با<br />
=== یکسان است با ( برابر و از یک نوع داده ای هستند )<br />
=! برابر نیست با<br />
==! یکسان نیست با<br />
&gt; کوچکتر است از<br />
=&gt; کوچکتر یا مساوی است با<br />
&lt; بزرگتر است از<br />
=&lt; بزرگتر مساوی است از</p>
<p>n فراموش نکنید که = برای مقدار دهی به متغیر ها استفاده می شود و با عملگر == برابر نیست .<br />
عملگر های منظقی<br />
شما  می توانید چند عبارت را با هم ترکیب کنید و به این نحو دو یا چند شرط را  در داخل یک دستور شرطی چک کنید . به عنوان مثال ، دستور زیر بررسی می کند  که آیا مقدار $number بین ۵ و ۱۰ است :</p></div>
<p>&nbsp;</p>
<div>
<div>
<div>کد PHP:</div>
<div>
<div dir="ltr"><code>$number = ۸;<br />
if ($number &gt;=5 AND $number &lt;=10){<br />
echo "$number is between five and ten";<br />
} </code></div>
</div>
</div>
</div>
<p>&nbsp;</p>
<div style="text-align: justify;">کلمه  کلیدی AND یک عملگر منطقی است و شرط کلی که با استفاده از آن نوشته می شود  تنها وقتی درست است که عبارت های دو طرف این عملگر هر دو درست باشند . به  عبارت دیگر $number باید هم بزرگتر یا مساوی ۵ باشد و هم کوچکتر یا مساوی  ۱۰ .<br />
عملگر های منطقی در PHP به شرح زیر می باشند :<br />
عملگر نام مفهوم<br />
! a NOT درست است اگر a درست نباشد .<br />
a&amp;&amp;b AND درست است اگر a و b هر دو درست باشند .<br />
a||b OR درست است اگر a یا b یکی ( یا هردو ) درست باشد .<br />
a AND b AND درست است اگر a و b هر دو درست باشند .<br />
a xor b XOR درست است اگر a یا b یکی درست باشد ، اما هر دو درست نباشند .<br />
A OR b OR درست است اگر a یا b یکی ( یا هردو ) درست باشد .<br />
n  پس همانطور که متوجه شده اید ، در عملگر های منطقی ، OR و AND را می توان  به دو حالت به کار برد . هم به صورت OR و یا AND و هم به صورت &amp;&amp;  ویا || .</p>
<p>به مثال های زیر توجه کنید :</p></div>
<div>
<div>
<div>کد:</div>
<div dir="ltr"><code>a OR b AND c<br />
a || b AND c</code></div>
</div>
</div>
<div style="text-align: justify;">در  شرط اول ، عملگر and اولویت بالاتری نسبت به or دارد و زودتر ارزیابی می  شود . شرط لکی در صورتی درست است که a درست باشد و از بین a و b حداقل یکی  آنها باید درست باشد .<br />
در شرط دوم ، عملگر || اولویت بالاتری نسبت به  and دارد و لذا برای آ«که شرط برقرار باشد ، c باید درست باشد و از بین a و  b حداقل یکی از آنها درست باشد .<br />
n توجه داشته باشید که عملگر های  &amp;&amp; و || حتماً باید به صورت دوتایی به کار برده شوند ، یعنی نوشتن  &amp; و | معنای متفاوتی در PHP دارند که در درس های آینده خواهیم پرداخت.<br />
انشعاب های چند شرطی<br />
با  اضافه کردن جمله else به دستور if می توانید عمل دیگری را مشخصی کنید تا  در صورت عدم برقراری شرط انجام شود . مثال زیر ، مقدار $number را چک می  کند و پیغامی را نشان می دهد که می گوید آن مقدار از ۱۰ بزرگتر است یا خیر :</div>
<p>&nbsp;</p>
<div>
<div>
<div>کد PHP:</div>
<div>
<div dir="ltr"><code>$number = ۱۶;<br />
if($number&lt;10){<br />
echo "$number is less than ten";<br />
}else{<br />
echo "$number is more than ten";<br />
} </code></div>
</div>
</div>
</div>
<p>&nbsp;</p>
<div style="text-align: justify;">جمله  else یک مکانیسم «یا این یا آن» را برای دستور های شرطی ایجاد می کند .  برای اضافه کردن انشعاب های بیشتر به یک دستور شرطی می توانید با استفاده  از کلمه کلیدی elseif شرط دیگری را اضافه کنید تا اگر شرط قبلی برقرار نبود  ، این شرط بررسی شود .<br />
در مثال زیر ، از تابع date استفاده شده است تا  ساعت جاری روز را برگرداند . date(&#8220;H&#8221;) عددی بین ۰ و ۲۳ را نتیجه می دهد که  مشخص می کند چه ساعتی از روز است و سپس بر اساس آن پیغامی در خروجی نمایش  داده می شود :</div>
<p>&nbsp;</p>
<div>
<div>
<div>کد PHP:</div>
<div>
<div dir="ltr"><code>$hour= date("H");<br />
if( $hour &lt; ۱۲ ) {<br />
echo 'Good Morning';<br />
} elseif ( $hour &lt; ۱۷ ) {<br />
echo 'Good Afternoon';<br />
}else{<br />
echo 'Good Evening';<br />
} </code></div>
</div>
</div>
</div>
<div style="text-align: justify;">کد  مربوط به else زمانی اجرا می شود که تمام شرط های قبلی نا درست باشد . اگر  مقدار $hour بزرگتر و یا مساوی ۱۷ باشد ، شرط if و شرط else هیچ کدام درست  نخواهد بود و کد مربوط به else اجرا می شود .<br />
دستور switchدر  دستور if می توانید به هر تعدادی که می خواهید از جملات elseif استفاده  کنید اما قرار دادن تعداد زیادی از این شرط ها باعث می شود کد شما پیچیده و  ناخوانا شود ، به همین خاطر برای این مواقع دستور مناسب تری پیش بینی شده  است . با استفاده از دستور شرطی switch می توان انشعاب های شرطی متعددی را  به شکل بسیار فشرده تری ایجاد کرد .<br />
در مثال زیر با دستور switch مقدار$name را در مقابل دو لیست از اسامی چک میکنیم تا معلوم شود که آیا نام یک دوست است یا خیر :</div>
<p>&nbsp;</p>
<div>
<div>
<div>کد PHP:</div>
<div>
<div dir="ltr"><code>switch($name){<br />
case "damon":<br />
case "shelly":<br />
echo "welcome , $name , you are my friend";<br />
break;<br />
case "adolf":<br />
case "saddam":<br />
echo "You are no friend of mine , $name";<br />
break;<br />
default:<br />
echo " I Do Not Know Who You Are , $name";<br />
} </code></div>
</div>
</div>
</div>
<p style="text-align: justify;">
در  کد بالا ، هر دستور case مقداری را تعریف می کند که به ازای آن ، بلوک کد  بعدی اجرا خواهد شد . اگر نام خود را به $name نسبت بدهید و بعد اسکریپت را  اجرا نمایید ، در صورتی که نام شما doman یا shelly باشد به شما به عنوان  دوست خوش آمد گفته می شود ، اما اگر نام شما Adolf و یا saddam باشد به شما  می گوید که دسوت من نیستید . و اگر نام شما هر چیز دیگری غیر از اینها  باشد این اسکریپت به شما می گوید که شما را نمی شناسد .<br />
شما می توانید  هر تعداد دستور case که نیاز دارید را قبل از کد PHP ای که به ازای آنها  اجرا می شود قرار دهید .اگر مقداری که توسط دستور switch چک می شود ( در  این مثال $name ) با هر کدام از دستور های case مطابقت داشته باشد کد PHP  بعد از آن دستور case اجرا خواهد شد و زمانی که به دستور break برسد ،  اجرای برنامه از دستور switch خارج می شود .<br />
n استفاده از دستور break  در داخل دستور switch اهمیت ویژه ای دارد . وقتی که یک دستور case با مقدار  مورد نظر مطابقت کند ، تمام کد هایی که بعد از آن قرار دارد اجرا خواهد شد  . اگر دستور break را قرار ندهید ، مقدار مورد نظر با بقیه case ها نیز  مقایسه می شود ، اما اغلب اوقات نمی خواهیم چنین اتفاقی بیفتد و مایل هستیم  اجرای دستور به پایان برسد ،بنا براین فراموش نکنید که دستور break را بعد  از دستورات زیر case قرار دهید .<br />
اگر هیچ یک از case ها با مقدار $name  مطابقت نکند ، بلوک کد default اجرا می شود . قرار دادن default نیز مانند  دستور else اختیاری است ، اما وجود آن باعث می شود که اگر هیچکدام از case  ها مطابقت نداشت ، عملی برای اجرا وجود داشته باشد .<br />
استفاده از حلقه ها<br />
در  PHP سه نوع ساختار حلقه وجود دارد که همگی یک کار را به روشهای مختلف  انجام می دهند و آن کار اجرای بخشی از کد برنامه به تعداد دفعات تکرار است .<br />
حلقه while<br />
حلقه  while یک شرط دارد که در داخل پرانتز نوشته می شود و تا زمانی که این شرط  برقرار باشد ، بلوک کد بعد آن اجرا می شود . اگر شرط از همان ابتدا نادرست  باشد ، بلوک کد اصلاً اجرا نخواهد شد .<br />
n کدی که به طور مکرر اجرا میشود  باید عملی را انجام دهد که باعث شود در نهایت شرطی به وجود آید که شرط  حلقه دیگر برقرار نباشد . در غیر این صورت حلقه برای همیشه تکرار می شود که  اصطلاحاً به آن حلقه بی پایان گفته می شود.<br />
در مثال زیر از حلقه while برای نشان دادن مجذور اعداد۱ تا ۱۰ استفاده شده است :</p>
<div>
<div>کد PHP:</div>
<div>
<div dir="ltr"><code>$count=1;<br />
while ($count &lt;=10 ){$square = $count * $count;<br />
echo "$count squaredis $square &lt;br&gt;";$count++;<br />
} </code></div>
</div>
</div>
<p>&nbsp;</p>
<div style="text-align: justify;">به  متغیر شمارننده $countدر ابتدا مقدار اولیه ۱ داده می شود . حلقه while  مجذور این عدد را محاسبه کرده و در نتیجه نشان می دهد ، سپس یک واحد به  مقدار $count افزوده می شود . عملگر ++ مقدار$count را یک واحد افزایش می  دهد .<br />
این حلقه تا زمانی که شرط $count &lt;= 10 برقرار باشد تکرار می  شود ، بنا براین اعداد ۱ تا ۱۰ و مجذور آنها به ترتیب نشان داده می شوند و  سپس حلقه خاتمه می یابد .<br />
حلقه do<br />
حلقه  do بسیار شبیه حلقه while است و تنها تفاوتی که با آن دارد این است که شرط  حلقه بعد از بلوک کد قرار داده می شود . به همین دلیل حتی اگر شرط حلقه از  همان ابتدا نادرست باشد ، این بوک کد حداقل یک بار اجرا خواهد شد .<br />
حلقه do در مثال زیر همانند حلقه while در مثال قبلی عمل می کند ، یعنی اعداد ۱ تا ۱۰ و مجذور آنها را نمایش می دهد:</div>
<div>
<div>کد PHP:</div>
<div>
<div dir="ltr"><code>$count=1;<br />
do {$square = $count * $count ;<br />
echo "$count squared is $square&lt;br&gt;";$count++;<br />
}while ($count&lt;=10); </code></div>
</div>
</div>
<p>حلقهfor</p>
<div>
<div>کد PHP:</div>
<div>
<div dir="ltr"><code>for ($ount=1;$count&lt;=10;$count++){$square=$count*$count;<br />
echo "$count squared is $square&lt;br&gt;";<br />
} </code></div>
</div>
</div>
<p style="text-align: justify;">
همانطور  که ملاحظه می کنید ، همان کاری که حلقه while و do انجام می دهند را با  استفاده از حلقه for می توانید با کد بسیار کمتری به شکل خلاصه تر انجام  دهید .<br />
در این حلقه :<br />
- بخش اول عبارتی است که فقط یکبار آن هم در شروع حلقه ارزیابی می شود . در مثال بالا این عبارت $count را مقدار دهی اولیه می کند.<br />
-  بخش دوم ، شرط حلقه است ، تا زمانی که این شرط برقرار باشد لقه تکرار می  شود . در حلقه for مانند حلقه while اگر شرط حلقه از همان ابتدا نادرست  باشد بلوک کد بعد از آن اجرا نمی شود .<br />
- بخش سوم عبارتی است که پس از  هر بار اجرای حلقه ، یکبار ارزیابی می شود ، در مثال بالا بعد از آنکه هر  بار یک خط در خروجی نمایش داده شود ، یک واحد به $count اضافه می شود .<br />
n  می توان با استفاده از حلقه های تو در تو ساختار های مختلفی را به وجود  آورد که در درس های آینده و پیچیده تر شدن کد نویسی ها به آنها خواهیم  پرداخت ، در نوشتن حلقه های تو در تو نباید ایجاد تو رفتگی را برای خوانا  تر شدن کد فراموش نمود .<br />
خارج شدن از یک حلقه<br />
قبلاً با نحوه استفاده  از کلمه کلیدی break در دستور switch آشنا شدید . از break در حلقه ها نیز  می توانید استفاده کنید . در این صورت وقتی اجرای برنامه به break می رسد ،  فوراً از حلقه خارج می شود و از دستور بعد از حلقه ادامه پیدا می کند .<br />
با  استفاده از کلمه کلیدی continue می توانید به تکرار فعلی یک حلقه پایان  بدهید . بر خلاف break وقتی از continue استفاده می کنید اجرای برنامه از  حلقه خارج نمی شود ، بلکه به بالای همان حلقه برمیگردد و تا زمانی که شرط  حلقه نادرست شود ، اجرای حلقه ادامه می یابد .</p>
]]></content:encoded>
			<wfw:commentRss>http://miniprogrammer.com/php-learning-part3-miniprogrammer-niman2d/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>آموزش پی اچ پی &#8211; درس دوم</title>
		<link>http://miniprogrammer.com/php-learning-part2-miniprogrammer-niman2d/</link>
		<comments>http://miniprogrammer.com/php-learning-part2-miniprogrammer-niman2d/#comments</comments>
		<pubDate>Wed, 03 Nov 2010 13:54:22 +0000</pubDate>
		<dc:creator>n2d</dc:creator>
				<category><![CDATA[طراحی وب]]></category>
		<category><![CDATA[پی اچ پی - PHP]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[آموزش]]></category>
		<category><![CDATA[پی اچ پی]]></category>

		<guid isPermaLink="false">http://miniprogrammer.com/?p=58</guid>
		<description><![CDATA[درس دوم استفاده از متغیر ها در این درس نحوه انتساب مقادیر به متغیر ها را در PHP یاد میگیرید و عبارت های ساده ای را با استفاده از آنها خواهیم نوشت . آشنایی با مفهوم متغیر ها متغیر (variable) که یکی از اجزاء اساسی هر زبان برنامه نویسی است همچون ظرفی است که می [...]]]></description>
			<content:encoded><![CDATA[<p><strong>درس دوم </strong></p>
<div style="text-align: justify;">استفاده از متغیر ها<br />
در این درس نحوه انتساب مقادیر به متغیر ها را در PHP یاد میگیرید و عبارت های ساده ای را با استفاده از آنها خواهیم نوشت .<br />
آشنایی با مفهوم متغیر ها<br />
متغیر  (variable) که یکی از اجزاء اساسی هر زبان برنامه نویسی است همچون ظرفی  است که می توان مقداری را در آن ذخیره کرد و بعد هرجا که نیاز بود آنرا  بازیابی کرد .<br />
به عنوان مثال شما می توانید متغیری بنام number داشته  باشید که مقدار ۵ را در خود نگه دارد یا متغیری بنام name داشته باشید که  مقدار MiniProgrammer را نگه دارد . کد PHP زیر متغیر های نامبرده را تعریف  می کنید :</div>
<div>
<div>
<div>کد PHP:</div>
<div>
<div dir="ltr"><code>&lt;?php<br />
$number=5;$name='MiniProgrammer';?&gt;</code></div>
</div>
</div>
</div>
<div style="text-align: justify;">در  PHP نام متغیر همیشه با علامت دلار ($) شروع می شود .اگر این نکته را به  خاطر بسپارید اعلان یا تعریف یک متغیر جدید کار بسیار راحتی<a href="http://miniprogrammer.com/wp-content/uploads/2010/11/php-logo1.jpg"><img class="alignright size-thumbnail wp-image-60" title="php-logo1" src="http://miniprogrammer.com/wp-content/uploads/2010/11/php-logo1-150x150.jpg" alt="" width="150" height="150" /></a> است : کافی است  نام متغیر را به همراه علامت $ در سمت چپ علامت مساوی قرار دهید و مقداری  که میخواهید در متغیر قرار دهید را در سمت راست بنویسید .<br />
در PHP بر خلاف بسیاری از زبان های دیگر ، نیازی نیست که نوع متغیر را قبل از به کار بردن ، تغریف کنید .<br />
در  تمام قسمت های زبان PHP می توان از متغیر ها به جای مقادیر ثابت استفاده  کرد . در کد زیر از دستور echo برای نشان دادن مقدار ذخیره شده در یک متغیر  استفاده شده است ، در حالیک ه می توانستیم از یک قطعه متن ثابت به جای آن  استفاده کنیم :</div>
<div>
<div>
<div>کد PHP:</div>
<div>
<div dir="ltr"><code>&lt;?php<br />
$name='MiniProgrammer';<br />
echo 'Welcome To ';<br />
echo $name;?&gt;</code></div>
</div>
</div>
</div>
<p>و خروجی به صورت زیر خواهد بود :</p>
<div>
<div>
<div>کد:</div>
<div dir="ltr"><code>Welcome To MiniProgrammer</code></div>
</div>
</div>
<p>نامگذاری متغیر ها</p>
<div style="text-align: justify;">هر  چه نامی که برای متغیر ها انتخاب می کنید توصیفی تر باشد ، وقتی چند ماه  بعد از نوشتن یک اسکریپت به آن رجوع می کنید ، راحت تر می توانید به یاد  بیاورید که برای چه منظوری از آن متغیر ها استفاده کرده اید .<br />
سعی کنید  هیچ گاه متغیر های خود را با نام هایی نظیر $a و $b و امثال اینها نامگذاری  نکنید . چون در این صورت بعد از مدت کوتاهی فراموش می کنید که هر کدام از  این حروف چه معنی و مفهومی دارند . نام مناسب برای متغیر ها نامی است که  دقیقاً نوع ِ مقادیری که در متغیر ذخیره می شود را بیان کند ( به طور مثال  $price برای ذخیره قیمت و $name برای ذخیره کردن اسامی )<br />
توجه داشته  باشید که در نامگذاری متغیر ها ، بین حروف بزرگ و کوچک تفاوت وجود دارد .  به عنوان مثال $miniprogrammer با $Miniprogrammer و با $MiniProgrammer  تفاوت وجود دارد و در عمل ۳ متغیر می باشند .<br />
برای نام گذاری متغیر ها  می توانید از حروف ، اعداد و کاراکتر ( _ ) خط زیر استفاده کنید و نام  متغیر حتماً باید با یکی از حروف یا کاراکتر خط ِ زیر شروع شود ( یعنی  نباید با اعداد شروع شود ).<br />
به عنوان مثال ، برخی از نام های غیر معتبر برای یک متغیر :</div>
<div>
<div>
<div>کد PHP:</div>
<div>
<div dir="ltr"><code>$pct%$first-name$1stMiniprogrammer </code></div>
</div>
</div>
</div>
<div>متغیر های بالا هیچ یک برای PHP قابل آنالیز نمی باشد و مورد قبول واقع نمی شود .<br />
برای  انتخاب نام متغیری که از چند کلمه تشکیل شده است می توانید از ۲ راه معمول  استفاده کنید ، اول اینکه می توانید با کلمه ها را با ( _ ) از هم جدا  کنید ، مانند : $first_miniprogrammer و دوم اینکه می توانید به این روش  مشخص کنید : $firstMiniprogrammer .</div>
<p>نوشتن عبارت ها</p>
<div style="text-align: justify;">وقتی  می خواهید مقداری را به یک متغیر نسبت دهید ، لزومی ندارد که آن مقدار ،  یک مقدار ثابت باشد بلکه ، می تواند یک عبارت ( expression ) یا چند مقدار  باشد که با استفاده از یک عملگر با هم ترکیب شده اند و یک نتیجه در خروجی  تولید می کنند . مثال زیر نسبتاً روشن است اما در قسمت زیر درباره آن توضیح  می دهم :</div>
<div>
<div>
<div>کد PHP:</div>
<div>
<div dir="ltr"><code>$num=16+30;<br />
echo $num; </code></div>
</div>
</div>
</div>
<div style="text-align: justify;">متغیر  $num مقدار عبارت سمت راست علامت مساوی را در خود نگه می کند . مقادیر ۱۶ و  ۳۰ با استفاده از عملگر جمع با هم ترکیب شده و حاصل جمع این دو مقدار  برگردانده می شود .<br />
همانطور که انتظار می رود ، این قطعه کد مقدار ۴۶ را در خروجی نشان می دهد .<br />
برای اینکه ببینید چگونه می توان از متغیر ها به جای مقادیر ثابت استفاده کرد ، همان عملیات جمع را روی دو متغیر انجام می دهیم :</div>
<div>
<div>
<div>کد PHP:</div>
<div>
<div dir="ltr"><code>$a=16;$b=30;$sum=$a+$b;<br />
echo $sum; </code></div>
</div>
</div>
</div>
<div style="text-align: justify;">ابتدا دو متغیر تعریف شده ، در متغیر سوم حاصل جمع آنها ریخته می شود و سپس در خروجی چاپ می گردد .<br />
استفاده از متغیر در داخل رشته<br />
قبلاً  دیدید که رشته های متنی باید در داخل علائم کوتیشن قرار داده شوند و اشاره  کردیم که بین کوتیشن تکی و دوتایی تفاوتی وجود دارد . اما تفاوت آنها این  است که اگر در داخل رشته ای که با کوتشین دو تایی بیان شده است نام یک  متغیر به همراه علامت $ وجود داشته باشد، مقدار فعلی آن متغیر در داخل رشته  قرار داده می شود . اما اگر این رشته در داخل علائم کوتیشن تکی باشد ،  علامت دلار به عنوان یک کاراکتر معمولی تفی می شود و از مقدار متغیر  استفاده نخواهد شد .<br />
مثال های زیر به روشن شدن مطلب کمک می کند . در مثال زیر ، مقدار متغیر $name در داخل رشته جایگذاری می شود :</div>
<div>
<div>
<div>کد PHP:</div>
<div>
<div dir="ltr"><code>$name='miniprogrammer';<br />
echo "welcome to $name"; </code></div>
</div>
</div>
</div>
<p>بنا براین کد بالا عبارت welcome to miniprogrammer را در خروجی نمایش می دهد .<br />
اما در مثال زیر ،</p>
<div>
<div>
<div>کد PHP:</div>
<div>
<div dir="ltr"><code>$name='miniprogrammer';<br />
echo 'welcome to $name'; </code></div>
</div>
</div>
</div>
<div style="text-align: justify;">خروجی ما به صورت welcome to $name می باشد . آن هم به دلیل استفاده از علامت نقل قول تکی است .<br />
گاهی  اوقات نیز لازم است برای PHP دقیقاً مشخص کنید که یک متغیر کجا شروع می  شود و کجا پایان می یابد . اینکار را با استفاده از آکولاد های باز و بسته (  { } ) انجام می دهیم . اگر خواستید مقدار وزن را با استفاده از پسوندی که  نشان دهنده واحد آن است ( مانند کیلوگرم ) نشان دهید ، میت وانید به روش  زیر عمل کنید :</div>
<div>
<div>
<div>کد PHP:</div>
<div>
<div dir="ltr"><code>echo "The Total Weight Is {$weight}kg"; </code></div>
</div>
</div>
</div>
<div style="text-align: justify;">اگر  آکولاد ها را در کنار متغیر قرار ندهیم ، PHP به دنبال متغیری با نام  $weightkg میگردد ، حال اینکه منظور ما متغیر $weight بوده است .<br />
همین کار را می توان با استفاده از . ( نقطه ) انجام داد ، به عنوان مثال :</div>
<div>
<div>
<div>کد PHP:</div>
<div>
<div dir="ltr"><code>echo 'The Total Weight Is '.$weight.'kg'; </code></div>
</div>
</div>
</div>
<div style="text-align: justify;">با  این روش ، PHP ابتدا داخل علامت نقل قول تکی را بدون هیچ جایگذاری و یا  جستجو برای متغیر در خروی چاپ می کنید ، پس از آن متغیر موجود را چاپ کرده و  بعد نیز kg را ، و به دلیل استفاده از . همه موارد را با هم در خروجی  نمایش می دهد .<br />
آشنایی با انواع داده ها<br />
انواع  متغیری که مقداری داده را در خود نگه می دارد دارای یک نوع داده هست که  مشخص می کند آن متغیر چه نوع مقداری را می تواند نگه دارد . انواع اصلی  داده ها در PHP به شرح زیر می باشند :<br />
Boolean : یک مقداری بولی که می توانید TRUE و یا FALSE باشد .<br />
Integer : یک مقدار عدیدی که می تواند یک عدد صحیح مثبت و یا منفی باشد .<br />
Double و یا Float : یک مقدار عددی با ممیز شناور که می تواند هر عدد اعشاری باشد .<br />
String : یک مقدار حرفی-عددی که می تواند شامل هر تعداد کاراکتر ASCII باشد .<br />
وقتی  مقداری را به یک متغیر نسبت می دهید ، نوع داده آن نیز تغیین می شود . PHP  به طور خودکار نوع داده را بر اساس مقداری که به آن نسبت می دهید مشخص می  کند . اگر میخ واهید چک کنید که PHP جه نوع داده ای را برای یک متغیر در  نظر گرفته است می توانید از تابع gettype() استفاده نمایید .<br />
با اجرای کد زیر مشخص می شود که نوع داده یک عدد اعشاری double است :</div>
<div>
<div>
<div>کد PHP:</div>
<div>
<div dir="ltr"><code>$value=7.2;<br />
echo gettype($value); </code></div>
</div>
</div>
</div>
<div style="text-align: justify;">تابع  settype عکس تابع gettype عمل می کند ، یعنی اجازه می دهد نوع داده یک  متغیر را خودتان به طور صریح تعیین کنید .اگر مقدار ذخیره شده در متغیر  متناسب با نوع داده جدید نباشد ، آن مقدار به نزدیکترین مقدار ممکن تبدیل  شده و سپس متغیر ذخیره می شود .<br />
کد زیر تلاش می کند یک مقدار رشته ای را به یک عدد صحیح ( Integer ) تبدیل کند :</div>
<div>
<div>
<div>کد PHP:</div>
<div>
<div dir="ltr"><code>$value='22 Jan ۲۰۰۵');settype($value,"integer");<br />
echo $value; </code></div>
</div>
</div>
</div>
<div style="text-align: justify;">در  این مثال ، رشته با عدد ۲۲ شروع می شود اما کل رشته یک عدد صحیح نیست .  تغییر نوع داده به integer باعث می شود که از ابتدای این رشته تا اولین  کاراکتر غیر عدد حذف شود و بقیه آن دور ریخته شود ، لذا آنچه در خروجی ظاهر  می شود فقط عدد ۲۲ خواهد بود .<br />
در عمل به ندرت از این دو تابع استفاده  می شود و دلیل آنکه در درس دوم معرفی شدند آن بود که دوستان عزیز متوجه  شوند که در PHP نیز می توان انواع داده ها نیز کار کرد / تغییر داد /  دریافت کرد .<br />
تعویض نوع داده<br />
گاهی  اوقات انتظار می رود که مقادیر از نوع ِ خاصی باشند . در این حالت PHP نوع  داده مقادیر را به طور ضمنی تغییر می دهد . به این کار اصطلاحاً تعویض نوع  ِ داده گفته می شود .<br />
به عنوان مثال ، انتظار این است که عملگر جمع بین  دو عدد قرار داده شود . بنا براین اگر مقادیر از نوع رشته باشند ، پیش از  آنکه عمل جمع بر روی آنها انجام شود به نوع double یا integer تبدیل می  شودن ، لذا نتیجه عمل جمع زیر یک مقدار Integer است :</div>
<div>
<div>
<div>کد PHP:</div>
<div>
<div dir="ltr"><code>echo ۱۱۰+"۱۰ inches"; </code></div>
</div>
</div>
</div>
<div style="text-align: justify;">این عبارت دو عدد ۱۰۰ و ۱۰ را با هم جمع می کند و ۱۱۰ را در خروجی نشان می دهد .<br />
وقتی  از یک عملگر رشته ای بر روی داده های عددی استفاده می کنید اتفاق مشابهی  رخ می دهد ، اگر یک عملیات که مختص رشته ها است را بر روی یک مقدار عددی  انجام دهید ، لبتدا مقادیر عددی به رشته تبدیل شده و سپس عملیات بر روی  آنها نجام می شود ، در واقع مثالی که از این حال را قبلاً در همین درس  دیدید که در آنجا عملگر اتصال رشته بر روی $weight که دارای مقدار عددی بود  استفاده کردیم .<br />
نتیجه یک عملیات رشته ای همیشه از نوع رشته خواهد بود ،  هر چند که ممکن است ظاهر آن به صورت یک عدد به نظر بیاید . مثال زیر مقدار  ۶۹ ا در خروجی نمایش می دهد اما همانطور که تابع gettype نشان می دهد ،  متغیر $number حاوی یک مقدار رشته ای است :</div>
<div>
<div>
<div>کد PHP:</div>
<div>
<div dir="ltr"><code>$number=6 . ۹;<br />
echo $number;<br />
echo gettype(6 . ۹); </code></div>
</div>
</div>
</div>
<div style="text-align: justify;">در درس های ۵ و ۶ با انواع مختلف عملگر هایی که روی انواع داده های عددی و رشته ای عمل می کنند آشنا خواهید شد .<br />
متغیر های متغیر<br />
از  مقدار ذخیره شده در یک متغیر می توان به عنوان نام ِ متغیر دیگر استفاده  کرد ، اگر موضوع پیچیده به نظر می رسد ، به مثال زیر توجه کنید :</div>
<div>
<div>
<div>کد PHP:</div>
<div>
<div dir="ltr"><code>$my_age=21;$varname="my_age";<br />
echo “The Value Of $varname is ${$varname}"; </code></div>
</div>
</div>
</div>
<p>که خروجی آن به صورت زیر خواهد بود :</p>
<div>
<div>
<div>کد:</div>
<div dir="ltr"><code>The Value Of my_name is 21</code></div>
</div>
</div>
<div style="text-align: justify;">از  آنجایی که این رشته در داخل علامت کوتیشن دوتایی قرار داده شده است ،  علامت دلار مشخص می کند که باید مقدار متغیر در داخل رشته جایگذاری شود ،  جمله ${$varname} نشان می دهد که باید مقدار متغیری که نامش در $varname  ذخیره شده است در داخل رشته چایگذاری شود و اصطلاحاً به آن متغیر متغیر  گفته می شود .<br />
برای آنکه مشخص کنیم ابتدا باید مقدار $varname استخراج  شود ، آن را در داخل آکولاد قرار می دهیم . اینکار در رشته های محصور در  کوتیشن دوتایی الزامی است ، اما در موارد دیگر اختیار است . مثال زیر ،  همان خروجی مثال قبل را نشان می دهد ، اما در آن از عملگر اتصال رشته و  علائم کوتیشن تکی استفاده شذه است :</div>
<div>کد PHP:</div>
<p style="text-align: left;"><code>echo 'The Value Of ' .$varname. 'Is ' .$$varname; </code></p>
]]></content:encoded>
			<wfw:commentRss>http://miniprogrammer.com/php-learning-part2-miniprogrammer-niman2d/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>آموزش پی اچ پی &#8211; درس اول</title>
		<link>http://miniprogrammer.com/php-learning-part1-miniprogrammer-niman2d/</link>
		<comments>http://miniprogrammer.com/php-learning-part1-miniprogrammer-niman2d/#comments</comments>
		<pubDate>Sat, 30 Oct 2010 13:48:17 +0000</pubDate>
		<dc:creator>n2d</dc:creator>
				<category><![CDATA[طراحی وب]]></category>
		<category><![CDATA[پی اچ پی - PHP]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[اموزش]]></category>
		<category><![CDATA[برنامه نویسی]]></category>
		<category><![CDATA[پی اچ پی]]></category>

		<guid isPermaLink="false">http://miniprogrammer.com/?p=53</guid>
		<description><![CDATA[سلام خدمت همگی ، چند وقتی بود وقت نکرده بودم که به روز کنم ، امروز تصمیم گرفتم که با آموزش PHP از روی یک کتاب شروع کنم . . . در حین ارائه درسها تغییراتی اعمال میکنم و از کتب دیگر هم کمک میگیرم تا کنار هم مطالب جدید یاد بگیریم . . خُب [...]]]></description>
			<content:encoded><![CDATA[<p>سلام خدمت همگی ،</p>
<p>چند وقتی بود وقت نکرده بودم که به روز کنم ، امروز تصمیم گرفتم که با آموزش PHP از روی یک کتاب شروع کنم . . .</p>
<p>در حین ارائه درسها تغییراتی اعمال میکنم و از کتب دیگر هم کمک میگیرم تا کنار هم مطالب جدید یاد بگیریم . .</p>
<p>خُب درس اول . . .</p>
<div style="text-align: justify;">درس اول</p>
<p>آشنایی مقدماتی با PHP<br />
با مطالعه این درس متوجه می شوید که PHP چیست و با استفاده از آن چه کارهایی می توان انجام داد.<br />
اصول PHP<br />
احتمالاً  درباره PHP و کارهایی که می تواند انجام دهد تا حدودی آگاهی دارید و به  همین دلیل این کتاب را برای مطالعه انتخاب کرده اید . حتی اگر تاکنون چیزی  درباره PHP و قابلیت های آن نشنیده باشید بی گمان از سایت وبی استفاده کرده  اید که با PHP ساخته شده است .در این درس به خوبی در میابیدکه PHP چیست ،  طرز کار آن چگونه است و از چه قابلیت هایی برخوردار است .<br />
PHP  یک زبان برنامه نویسی است که برای ایجاد وب سایت های پویا طراحی شده است .  برنامه PHP در سرویس دهنده وب قرار داده می شود و دستوراتی که در داخل یک  صفحه وب نوشته شده را قبل از آنکه آن صفحه به مرورگر وب ارسال شود پردازش  می کند . بنابر این می توان عناصر خاصی از صفحه را در حین اجرای برنامه  ایجاد کرد که به این ترتیب صفحه هر دفعه که بارگذاری می شود تغییر کند . به  عنوان مثال ، همانطور که بعدها در همین درس مشاهده خواهید کرد با استفاده  از PHP می توانید تاریخ و ساعت جاری را در بالای تمام صفحات سایت خود نشان  دهید .<br />
نام PHP مخفف Hypertext Preprocessor ( پیش پردازنده  ابر متن ) است که البته از نام آن در خود مخفف نیز استفاده شده است . در  آغاز نام آن PHP/FI بود . FI مخفف Forms Interpreter و به معنای مفسر فرمها  است . با ایکه این اسم مدتی بعد کوتاهتر شد و FI آن حذف شد ، یکی از ویژگی  های PHP قدرت آن درپردازش داده های ارسال شده از طریق فرم های HTML است .  همچنین PHPمی تواند با سیستم های مختلف بانک اطلاعاتی ارتباط برقرار کد و  این قابلیت به شما توانایی ایجاد صفحات وب مبتنی بر پرس و جو های SQL را می  دهد .<br />
به عنوان مثال ، شما می توانید یک کلمه کلیدی را برای  جستجو در داخل یک فیلد ِ فرم در صفحه وب وارد کنید ، یک بانک اطلاعاتی را  با این کلمه<a href="http://miniprogrammer.com/wp-content/uploads/2011/04/php.png"><img class="alignleft size-thumbnail wp-image-55" title="php" src="http://miniprogrammer.com/wp-content/uploads/2011/04/php-150x150.png" alt="" width="150" height="150" /></a> کلیدی جستجو کنید و بر اساس نتایج جستجو ، یک صفحه وب را ایجاد  کنید. این نوع از کاربرد PHP را قبلاً بارها در فروشگاه های اینترنتی و  بسیاری از سایت های وبی که چیزی نمی فروشند ، نظیر موتور های جستجو دیده  اید .<br />
زبان PHP انعطاف پذیر و نسبتاً خطا پذیر است و حتی اگر  در گذشته هرگز برنامه ای ننوشته باشید به راحتی می توانید آن را یاد بگیرید  . اگر از قبل با زبان دیگری آشنایی داشته باشید ، قطعاً مشابهت هایی را  بین آنها پیدا خواهید کرد . PHP ملغمه ای از زبان های برنامه نویسی C،Perl و  جاوا است و اگر با هرکدام از این زبان های آشنایی داشته باشید ، با کمی  تلاش می توانید سبک برنامه نویسی خود را تغییر داده و منطبق بر PHP کنید .</div>
<div>
<p style="text-align: justify;">نوشتن اسکریپت جانب سرویس دهنده<br />
مهمترین  موضوعی که باید در شروع آموزش PHP یاد بگیرید این است که اسکریپت های PHP  دقیقاً چه جایگاهی را در محیط وب دارند . پس از درک ِ این موضوع می توانید  بفهمید که PHP چه کاری دقیقاً می تواند انجام دهد و چه کاری را نمی تواند  انجام دهد .<br />
ماژول ِ PHP به سرویس دهنده وب شما متصل می شود و  به آن میگوید که کد PHP در فایلهایی که پسوند خاصی دارند باید مورد بررسی  قرار گیرد . قبل از آنکه یک صفحه وب به مرورگر فرستاده شود ، تمام کدهای  PHP موجود در آن صفحه اجرا می شود و خروجی حاصل از آن ، جایگزین کد PHP می  شود .<br />
پسوند های فایل : پیکر بندی معمول سرویس دهنده وب به این  صورد است که فایلهای دارای پسود . PHP توسط PHP تفسیر می شوند ، در حالی  که فایلهای دارای پسوند .HTML هم مستقیماً به مرورگر ارسال می شوند بدون  آنکه PHP در آنها دخالتی داشته باشند .<br />
تنها موقعی که مفسر PHP  احضار می شود تا کاری انحام دهد ، زمانی است که یک صفحه وب بارگذاری می  شود ، این اتفاق می تواند زمانی رخ دهد که روی یک لینک کلیک می کنید ، یک  فرم را ارسال می کنید یا صرفاً آدرس ِ یک صفحه وب را در نوار آدرس مرورگر  تایپ می کنید .وقتی مرورگر وب ، دانلود صفحه را به پایان می رساند ، PHP  دیگر کاری انجام نمی دهد مگر آنکه مرورگر مجدداً صفحه دیگری را درخواست کند  .<br />
از آنجایی که مقادیر وارد شده در یک فرم HTML را فقط زمانی  می توان چک کردن که کاربر روی دکمه Submit کلیک می کند ، از PHP نمی توان  برای ارزیابی اطلاعات فرم در جانب سرویس دهنده استفاده کرد ( به عبارت دیگر  قبل از آنکه اجازه بدهید کهربر به سراغ فیلد بعدی برود نمی توانید چک کنید  که آیا مقداری که در فیلد ِ جاری وارد کرده است با معیار خاصی مطابقت دارد  یا خیر – این کار را می توان با استفاده از Ajax انجام داده که البته بعد  از آموزش PHP انشاالله به Ajax هم خواهیم پرداخت . . .) .ارزیابی در جانب  سرویس دهنده را می توان با استفاده از کد های JavaScript انجام داد . جاوا  اسکریپت زبانی است که در داخل خود مرورگر وب اجرا می شود و در مواقعی که  نیاز باشد می توان از جاوا اسکریپت به همرا PHP استفاده کرد .<br />
از  محاسن PHP این است که اصلاً به مرورگر وب متکی نیست ؛ به عبارت دیگر  مرورگر شما هر چه که باشد اسکریپت PHP به یک صورت اجرا می شود . هنگام  نوشتن کد جانب سرویس دهنده لازم نیست نگران این باشید که آیا جاوا اسکریپت  در مرورگر فعال شده است یا خیل و اینکه آیا اسکریپت شما با مرورگر های  قدیمی سازگاری دارد و آنها قادر هستند کد HTML ی که اسکریپت شما تولید می  کند یا در آن تعبیه شده است را نشان بدهد یا خیر .<br />
برچسب های PHP<br />
بخشی از کد یک صفحه وب که با PHP کار می کند را در زیر می بینید این کد تاریخ کاری را نشان می دهد :</p>
<div>
<div>کد PHP:</div>
<div>
<div dir="ltr"><code>This Is &lt;?php echo date(' j F Y');?&gt;</code></div>
</div>
</div>
<div style="text-align: justify;">برچسب  یا تگ &lt;?php به PHP میگوید که هرچیزی که بعد از آن می آید کد برنامه  است نه کد HTML و پایان آن را با برچسب ?&gt; مشخص می کند . در این مثال  دستور echo به PHP میگوید که آیتم بعدی را در صفحه نمایش بدهد ( چاپ کند ) .  در اینجا آیتم بعدی دستور date است که تاریخ جاری را با فرمت مشخص شده  درون () نشان می دهد . ( در آینده با جدولی مفصلاً توضیح خواهم داد ) .<br />
مشخص  کردن پایان یک دستور : برای مشخص کردن پایان یک دستور PHPاز کاراکتر سمی  کالن استفاده می شود ، در مثال بالا فقط یک دستور داشتیم و در واقع نیازی  به قرار دادن سمی کالن نبود ، اما خوب است که همیشه عادت کنید در پایان هر  دستور سمی کالن را قرار دهید تا معلوم شود که دستور از کجا تمام می شود .<br />
در  این کتاب ک PHP در داخل برچسب یا تگ های &lt;?php…?&gt; نوشته شده است .  سبک های دیگری نیز وجود دارد و ممکن است ببینید که برخی افراد کد PHP را با  برچسب های زیر نیز به کار میبرند :</p>
<p>&lt;%&#8230;%&gt; &#8211; برچسب های ASP<br />
و یا &#8211; برچسب اسکریپت .<br />
از  میان سبک های برچسب مختلفی که می توان استفاده کرد ، تنها برچسب کامل  &lt;?php و برچسب اسکریپت همیشه قالب استفاده هستند . سایر سبک ها را می  توان با استفاده از تنظیمی که در پیکر بندی PHP انجام می شود فعال و یا غیر  فعال کرد . در درس های آینده دربار تنظیمات پیکربندی PHP به تفضیل توضیح  خواهیم داد .<br />
هر چیزی که در داخل برچسب های PHP قرار داده نشود  مستقیماً به مرورگر منتقل می شود و دقیقاً به همان شکل که در اسکریپت  نوشته شده است نمایش داده می شود . بنابراین در مثال ِ بالا ، کلمات Today  Is به همین صورت قبل از تاریخ روی صفحه نمایش داده می شود .<br />
نوشتن اولین اسکریپت<br />
پیش از هر چیز باید نحوه نوشتن و اجرا کردن اسکریپت های PHP را یاد بگیرید تا بتوانید مثال های این کتاب را انجام دهید .<br />
برای  شروع ، یک فایل با نام time.php ایجاد کنید که حاوی کد زیر باشد و آن را  در محلی که مفسر PHP اجرا می شود ( public_html / www / root / htdocs )  ذخیرا کنید ، این مثال کمی با مثال قبلی تفاوت دارد :</p>
</div>
<div>
<div>کد PHP:</div>
<div>
<div dir="ltr"><code>The Time Is&lt;br/&gt;<br />
&lt;?php echo date('H:i:s');?&gt;&lt;br/&gt;<br />
And Date IS<br />
&lt;br/&gt;<br />
&lt;?php echo date('j F Y');?&gt;</code></div>
</div>
</div>
<div style="text-align: justify;">وقتی  آدرس اینترنتی (URL) این فایل را در مرورگر وارد کنید ، مشاهده می کنید که  تاریخ و ساعت جاری بر اساس ساعت سیستم در سرویس دهنده وب نمایش داده می  شود .<br />
اگر کد قبل را به همان شکلی که در بالا مشاهده کردید وارد نموده باشید ، به همچین چیزی مواجه می شود :</div>
<div>
<div>کد:</div>
<div dir="ltr"><code>The Time Is<br />
15:25:47<br />
And Date IS<br />
28 October 2010</code></div>
</div>
<p>دستور echo</p>
<div style="text-align: justify;">اگر  چه PHP برای کار گذاشتن عناصر کوچک و پویا در داخل صفحات وب بسیار عالی  است ، اما در اغلب صفخات وب با قرار دادن اسکریپت در داخل برچسب های PHP  میتوان خروجی لازم را به وسیله مجموعه ای از دسوتریات PHP تولید کرد .<br />
از  دستور echo برای فرستادن خروجی به مرورگر استفاده می شود . در کد بالا از  echo برای نشان دادن نتیجه دستور date استفاده شد که تاریخ را در قالب یک  رشته فرمت دهی شده بر می گرداند . کد زیر نز همان کار را می کند ، با این  تفاوت که در آن از چند دستور echo در داخل یک بلوک PHP برای نمایش تاریخ و  زمان استفاده شده است :</div>
<div>
<div>کد PHP:</div>
<div>
<div dir="ltr"><code>&lt;?phpecho "The Time Is ";<br />
echo date('H:i:s');<br />
echo " and the date is ";<br />
echo date('j F Y');?&gt;</code></div>
</div>
</div>
<div style="text-align: justify;">در  این کد ، عناصر متنی غیر پویایی که می خواهیم به خروجی فرستاده شوند را در  داخل علائم نقل قول ( کوتیشن ) قرار داده ایم . رشته های متنی را هم می  توانید در داخل کوتیشن دوتایی قرار دهید ( مانند کد بالا ) و هم در داخل  کوتیشن تکی .<br />
در استفاده از دستوری echo بهتر است زمانی که در  رشته مورد نظر شما که میخواهید در خروجی چاپ کنید ، متغیری وجود ندارد از &#8216;  به جای &#8221; استفاده کنید . زمانی که از &#8221; استفاده می کنید موتور PHP به  دنبال متغیری میگردد تا مقدار آنرا جایگزین کند ، اما زمان استفاده از &#8216;  دقیقاً عین رشته موجود را بدون هیچ گونه جستجو برای یافتن متغیر ، در خروجی  چاپ می کند .<br />
درج توضیح در یک اسکریپت<br />
برای  درج کد در اسکریپت خود می توانید از علائم // ، # و /* */ استفاده کنید .  PHP به محض رسیدن به این علائم ، از خط و یا خطوط مورد نظر عبور می کند و  هیچ عملی را بر روی آنها انجام نمی دهد .<br />
به عنوان مثال :</div>
<div>
<div>کد PHP:</div>
<div>
<div dir="ltr"><code>&lt;?php/* In Reshte Chap Nemi Shavad */echo 'http://MiniProgrammer.Com/'; //In Khat MiniProgrammer.Com Ra Chap Mikonad ….<br />
#Ended !?&gt;</code></div>
</div>
</div>
<div style="text-align: justify;">اگر کد بالا را در یک فایل ذخیره و اجرا نمایید ، در خروجی آدرس سایت نالرز چاپ می شود و دیگر خطوط چاپ نمی شوند .<br />
دلیل  استفاده از توضیحات در اسکریپت ها این هست که اگر شخص دیگری اقدام به  تغییر اسکریپت نمود و یا خود ما در آینده چنین قصدی رو داشتیم ، راحتتر  بتونیم این کار رو انجام بدیم و سر در گم نشیم . . .</div>
</div>
]]></content:encoded>
			<wfw:commentRss>http://miniprogrammer.com/php-learning-part1-miniprogrammer-niman2d/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>چند و چون راه اندازی وب سایت ( قسمت دوم )</title>
		<link>http://miniprogrammer.com/how-to-have-web-site-part2-miniprogrammer-niman2d/</link>
		<comments>http://miniprogrammer.com/how-to-have-web-site-part2-miniprogrammer-niman2d/#comments</comments>
		<pubDate>Tue, 07 Sep 2010 13:45:06 +0000</pubDate>
		<dc:creator>n2d</dc:creator>
				<category><![CDATA[طراحی وب]]></category>
		<category><![CDATA[personal]]></category>
		<category><![CDATA[web design]]></category>
		<category><![CDATA[web site]]></category>
		<category><![CDATA[وب شخصی]]></category>

		<guid isPermaLink="false">http://miniprogrammer.com/?p=50</guid>
		<description><![CDATA[خُب در بحث قبلی ، به موضوعات اولیه ای در مورد راه اندازی یک وب سایت اشاره کردیم ، همونطور که گفتم در این پُست به توضیح اصطلاحاتی میپردازیم که بهتره از اول کار کمی باهاشون آشنا بشین . . . اول اینکه هاست به چی اطلاق میشه ، سعی میکنم مثل همیشه خیلی ساده [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;">خُب در بحث قبلی ، به موضوعات اولیه ای در  مورد راه اندازی یک وب سایت اشاره کردیم ، همونطور که گفتم در این پُست به  توضیح اصطلاحاتی میپردازیم که بهتره از اول کار کمی باهاشون آشنا بشین . .  .</p>
<p style="text-align: justify;">اول اینکه هاست به چی اطلاق میشه ، سعی میکنم مثل همیشه خیلی ساده بیان کنم ،  اول باید با مفهوم سرور آشنا بشید .</p>
<p style="text-align: justify;">سرور  چیز عجیبی نیست ، سرور یک کامپیوتر هست که از نظر سخت افزاری قویتر باشه ،  همینطور نرم افزارهای خاصی روی اون نصب میشه که برای کاربرد ِ مورد نظر (  اینجا راه اندازی وب سایت ) آماده بشه ، حالا با توجه به نوع ِ کاربُرد ِ  سرور  ، بعضی از سرورها نیازمند ِ اتصال دائمی و پر سرعت به اینترنت هستند  که عموماً این اینترنت در دیتا سنتر از طریق فیبر ِ نوری تامین میشه .</p>
<p style="text-align: justify;"><span style="font-size: xx-small;">*  اینکه گفتم بعضی از سرور ها نیاز به اتصال دائمی دارن برای این بود که  مثلا سرور حسابداری یک شرکت ، نیازی که به اینترنت نداره هیچ ، بلکه بهتر  هست اصلاً به اینترنت متصل نباشه .</span></p>
<p style="text-align: justify;">خُب  حالا این سرور دارای هارد دیسکی هست که با استفاده از نرم افزار هایی که  روش نصب کردند ، به مدیریت اون فضا ( منابع سیستم )<a href="http://miniprogrammer.com/wp-content/uploads/2011/04/images.jpg"><img class="alignright size-thumbnail wp-image-51" title="images" src="http://miniprogrammer.com/wp-content/uploads/2011/04/images-150x150.jpg" alt="" width="150" height="150" /></a> میپردازند . . . حالا  به این فضای وب که شما میتونی روش فایل های وب ِ خودت رو آپلود کنی و  استفاده کنی ، هاستینگ گفته میشه .</p>
<p style="text-align: justify;">پس هاستینگ ( یا همون فضای وب ) به قسمتی از فضای هارد دیسک سرور هست که برای آپلود کردن اطلاعات خودمون از اون استفاده می کنیم .</p>
<p style="text-align: justify;">خُب  حالا با توجه به نیاز خودتون که از چه زبان برنامه نویسی برای سایت خودتون  میخواین استفاده کنین ، انتخاب میکنین که از سروری با چه سیستم عاملی  استفاده کنین ، عموماً بعضی ها هم اسم لینوکس رو میبینن این تفکر غلط  براشون به وجود میاد که چون بلد نیستن با لینوکس کار کنند ، ویندوز بگیرند .  . .</p>
<p style="text-align: justify;">این تصور کاملاً اشتباه هست ، چون  شما به هیچ وجه به طور مستقیم با خود سیستم عامل و اینترفیس اون سر و کار  نداری ، شما با یک نرم افزار جانبی نصب شده بر روی سرور سر و کار داری که  با توجه به نوع سرور و انتخاب مدیر اون ، متفاوت هست .</p>
<p style="text-align: justify;">حالا  اگر شما سایت استاتیک میخوای راه اندازی کنی و نیازی به استفاده از ASP  ندارید ، بهتر هست که سرور لینوکس خریداری کنید ، بهترین دلیل اون هم این  هست که سرور های لینوکس از کنترل پانل قدرتمند cPanel استفاده میکنند که  واقعا کامل هست ( البته بنا به نظرات برخی ها ، کمی و کاستی هایی هم داره )  .</p>
<p style="text-align: justify;">سرور های ویندوز هم از کنترل پانل  های مختلفی مثل Plesk و . . . استفاده میکنند ، البته برای لینوکس هم کنترل  پانل های دیگری مانند LxAdmin و  . . . وجود داره که جدیداً LxAdmin با  توجه به قدرت فراوانی که داره ، کم کم جای خودش رو باز میکنه .</p>
<p style="text-align: justify;">زمانی که سرور مورد نظر خودتون رو انتخاب کردید و قصد تهیه هاست رو داشتید ، به چند اصطلاح برخورد میکنید :</p>
<p style="text-align: justify;">Space : مقدار فضایی که مدیر سرور از هارد درایو اون به شما اختصاص میده .</p>
<p style="text-align: justify;">Database  : معنی لفظی اون بانک اطلاعاتی هست . بهتر بخوایم بگیم بانک های اطلاعاتی   فایل هایی هستند که ما اطلاعاتمون رو در اونها ذخیره میکنیم و باتوجه به  نوع ِ برنامه بانک اطلاعتیمون نحوه استفاده و . . . فرق میکنه که متداول  ترین این برنامه ها MySQL هست . حالا اینکه چرا از بانک اطلاعاتی استفاده  میشه ، یک دلیل کوچک  عرض کنم که باعث دسترسی راحتتر و سریعتر به داده ها  میشه و همینطور ذخیره سازی مرتب و دارای ساختاری مرتب  . ( توضیح این مهم  در این پُست نمی گنجه ، انشاالله در آینده توضیح خواهم داد ) .</p>
<p style="text-align: justify;">Bandwitch  :که به اون ترافیک ماهیانه هم گفته میشه . منظور حجم اطلاعتی هست که از  هاستینگ شما در بازه زمانی معین ، دریافت و یا به اون ارسال میشه ( ساده تر  : حجم تمام ورودی و خروجی از هاست شما ) ، که عموماً با توجه به فضایی که  خریداری میکنید  متفاوت هست . بعضی ها هم به اون DataTransfer میگن .</p>
<p style="text-align: justify;">Addon Domain : یعنی تعداد دامنه هایی که شما میتونین به طور مستقیم به هاستینگ خودتون متصل کنید .</p>
<p style="text-align: justify;">اینها  رو میشه مهمترین اطلاعات دونست ، اما بعضی از فروشنده ها اطلاعات تکمیلی  دیگری هم در دسترس قرار میدن ، مانند نرم افزار های نصب شده و اینکه از چه  زبان های برنامه نویسی پشتیبانی میکنند و . . .</p>
]]></content:encoded>
			<wfw:commentRss>http://miniprogrammer.com/how-to-have-web-site-part2-miniprogrammer-niman2d/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

