1. مهمان گرامی، جهت ارسال پست، دانلود و سایر امکانات ویژه کاربران عضو، ثبت نام کنید.
    بستن اطلاعیه

آموزش PHP

شروع موضوع توسط hector2141 ‏12/9/12 در انجمن PHP

  1. کاربر ارشد

    تاریخ عضویت:
    ‏6/9/12
    ارسال ها:
    14,323
    تشکر شده:
    2,698
    امتیاز دستاورد:
    0
    حرفه:
    daneshjo
    [h=2]مقدمه و معرفی زبان PHP[/h] معرفی زبان PHP :
    PHP یک زبان برنامه نویسی اسکریپتی اپن سورس است که برای طراحی برنامه های تحت وب سمت سرور ( Server Side ) ، به کار می رود .
    سمت سرور بودن به این معناست که صفحات PHP ابتدا توسط سرور PHP ( که می تواند از نوع Apache یا IIS ) باشد ، پردازش شده و سپس خروجی به صورت کدهای HTML و جاوا اسکریپت ، برای اجرا به مرورگر کامپیوتر کاربر ارسال می شود . به عبارت دیگر وظیفه اجرای صفحات PHP به عهده کامپیوتر سرور وب هاست سایت آن می باشد . ( برخلاف HTML یا جاوا اسکریپت که اجرای آنها توسط خود مرورگر کاربر انجام می شود ) .
    PHP مخفف عبارت Hypertext PreProcessor به معنای پیش پردازنده فرا متن می باشد که در سال 1994 توسط رسموس لردورف ایجاد شد و سپس توسط سایرین توسعه و گسترش پیدا کرد .
    ساختار زبان PHP بسیار شبیه به زبان c و در نسخه های جدید شبیه به جاوا می باشد و به همین دلیل از محبوبیت فراوانی برخوردار است . از مشهورترین نرم افزارهای ساخته شده با PHP می توان به جوملا ، WikiMedia و یا Mambo اشاره کرد . سایت های فراوانی در جهان براساس زبان PHP نوشته شده اند و هر روز نیز بر تعداد آنها اضافه می شود . از مهمترین آنها می توان به ویکی پدیا اشاره کرد .
    پی‌اچ‌پی امکان استفاده از انواع مختلفی از پایگاه‌های داده را از جمله MySQL، اوراکل، IBM DB۲ ،Microsoft SQL Server ،PostgreSQL و SQLite با دستورهایی ساده فراهم می‌سازد. پی‌اچ‌پی روی بیشتر سیستم‌عامل‌های معروف از جمله لینوکس، یونیکس، ویندوز و Mac OSX و با اغلب کارگزارهای وب (Web Server) معروف، قابل اجراست.

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

    • بخش آموزش HTML
    • بخش آموزش Java Script
    [HR][/HR] مزیت های PHP :

    • PHP یک ابزار اپن سورس و رایگان است و به همین دلیل هاست هایی که میزبانی آن را انجام می دهند ، بسیار ارزانتر از هاست های .Net هستند .
    • پی اچ پی بر روی تمامی پلتفورم های معروف مثل Windows , Linux و iOs اجرا می شود .
    • PHP یک زبان ساخت یافته بوده و یادگیری آن بسیار ساده است .
    • ابزار کار با PHP همگی اپن سورس بوده و استفاده از آنها رایگان هستند .
    [HR][/HR] نسخه های مختلف PHP :
    تا کنون نسخه های مختلفی از PHP منتشر شده که به معرفی آنها در جدول زیر پرداخته ایم . این اطلاعات از سایت ویکی پدیا منتقل شده است :

    [TABLE]
    [TR]
    [TH] نسخه مهم [/TH]
    [TH] نسخه مهم [/TH]
    [TH] تاریخ نشر [/TH]
    [TH] یادداشت‌ها [/TH]
    [/TR]
    [TR]
    [TH] ۱٫۰ [/TH]
    [TD] ۱٫۰.۰ [/TD]
    [TD] ۱۹۹۵-۰۶-۰۸ [/TD]
    [TD] این اولین نام کاربردی پی اچ پی بود. نامیده شد..(PHP Tools) Personal Home Page Tools رسما

    "PHP".
    [/TD]
    [/TR]
    [TR]
    [TH] ۲٫۰ [/TH]
    [TD] ۲٫۰.۰ [/TD]
    [TD] ۱۹۹۶-۰۴-۱۶ [/TD]
    [TD] توسط سریعترین و ساده ترین ابزار ایجاد شد.برای ایجاد کردن صفحات وب پویا pages. [/TD]
    [/TR]
    [TR]
    [TH] ۳٫۰ [/TH]
    [TD] ۳٫۰.۰ [/TD]
    [TD] ۱۹۹۸-۰۶-۰۶ [/TD]
    [TD] توسعه آن از یک نفر به چند نفر تغییر کرد.زیو سوراسکی و اندی گاتمنز دوباره اساس این نسخه را نوشتند. [/TD]
    [/TR]
    [TR]
    [TH] ۴٫۰ [/TH]
    [TD] ۴٫۰.۰ [/TD]
    [TD] ۲۰۰۰-۰۵-۲۲ [/TD]
    [TD] سیستم تجزیه/اجرا در دو مرحله تحت عنوان ماشین Zend اضافه شد..[SUP][۲][/SUP] [/TD]
    [/TR]
    [TR]
    [TD] ۴٫۱.۰ [/TD]
    [TD] ۲۰۰۱-۱۲-۱۰ [/TD]
    [TD] ( $_GET, $_POST, $_SESSION) متغیرهای بسیار خوبی معرفی شدند.

    etc.)[SUP][۲][/SUP]
    [/TD]
    [/TR]
    [TR]
    [TD] ۴٫۲.۰ [/TD]
    [TD] ۲۰۰۲-۰۴-۲۲متغیرهای بدون استفاده با پیش فرض.holes in applications.[SUP][۲][/SUP] [/TD]
    [/TR]
    [TR]
    [TD] ۴٫۳.۰ [/TD]
    [TD] ۲۰۰۲-۱۲-۲۷ [/TD]
    [TD] علاوه بر CLI٬CGI نیز معرفی شد..[SUP][۲][/SUP] [/TD]
    [/TR]
    [TR]
    [TD] ۴٫۴.۰ [/TD]
    [TD] ۲۰۰۵-۰۷-۱۱ [/TD]
    [TD] صفحات مهمی برای اسکریپت phpsize و config-php اضافه شد..[SUP][۲][/SUP] [/TD]
    [/TR]
    [TR]
    [TD] ۴٫۴.۸ [/TD]
    [TD] ۲۰۰۸-۰۱-۰۳ [/TD]
    [TD] چند پیشرفت ایمنی.منتشر شدن پی اچ پی ۴..[SUP][۳][/SUP] [/TD]
    [/TR]
    [TR]
    [TD] ۴٫۴.۹ [/TD]
    [TD] ۲۰۰۸-۰۸-۰۷ [/TD]
    [TD] پیشرفت بیشتر و انتشار نسخه پی اچ پی ۴٫۴ ..[SUP] [۴][/SUP] [SUP][۵][/SUP] [/TD]
    [/TR]
    [TR]
    [TH] ۵٫۰ [/TH]
    [TD] ۵٫۰.۰ [/TD]
    [TD] ۲۰۰۴-۰۷-۱۳ [/TD]
    [TD] ماشین ۲ zend با امکان مدل شی گرایی..[SUP][۶][/SUP] [/TD]
    [/TR]
    [TR]
    [TD] ۵٫۲.۰ [/TD]
    [TD]
    [/TD]
    [TD] گسترش فیلتر با پیش فرض.[SUP][۶][/SUP] [/TD]
    [/TR]
    [TR]
    [TD] ۶٫۰.۰ [/TD]
    [TD] No date set
    [/TD]
    [TD] پشتیبانی از یونیکد یامتغیرهای رجیستری. support[SUP][۷][/SUP]
    [/TD]
    [/TR]
    [/TABLE]

    [HR][/HR] برای استفاده از PHP به چه نیاز دارید ؟
    برای استفاده و اجرای صفحات PHP شما باید سرور آپاچی ( Apache ) یا IIS را بر روی کامپیوتر خود نصب کنید . یا اینکه صفحه خود را بر روی یک سرور که از PHP پشتیانی می کند ، اجرا نمایید .
    [HR][/HR] درباره بخش آموزش PHP :
    در این بخش داریم تا شما را با نحوه برنامه نویسی و طراحی صفحات وب با زبان PHP آشنا نماییم . در هر صحفحه به توضیح نحوه کار و syntax استفاده از دستورات پرداخته و سپس سعی کردیم تا با ارائه مثال های عملی آنها را در عمل به شما نمایش دهیم .
    مطالب این بخش براساس سرفصل های منابع رسمی این زبان طراحی شده و مثال های عملی آن با استاندارهای نرم افزارهای Adobe Dreamweaver و Rad PHP طراحی شده و با مرورگر های مطرح تست شده است .
     
    یک شخص از این تشکر کرد.
  2. کاربر ارشد

    تاریخ عضویت:
    ‏6/9/12
    ارسال ها:
    14,323
    تشکر شده:
    2,698
    امتیاز دستاورد:
    0
    حرفه:
    daneshjo
    پاسخ : آموزش PHP

    [h=2]نحوه نصب و اجرای PHP[/h] نحوه نصب و اجرای PHP :
    در بخش قبل به معرفی کلیات و تاریخچه زبان PHP پرداختیم . در این بخش قصد داریم تا پیش نیازها و ابزاری که برای استفاده از PHP بر روی کامپیوتر خود نیاز دارید ، را معرفی نماییم .
    شما از PHP می توانید برای 3 منظور کلی استفاده نمایید :

    1. وب سایت ها و برنامه های کاربردی تحت وب ( اسکریپت نویسی سمت سرور )
    2. برنامه های کاربردی دسکتاپ ( GUI )
    3. برنامه نویسی خط فرمان
    برای برنامه نویسی و استفاده از PHP به 3 چیز کلی نیاز دارید :
    1. برنامه یا ابزاری برای طراحی و کدنویسی :
      در ساده ترین حالت می توانید از برنامه Notepad برای کدنویسی استفاده نمایید . اما نرم افزارهای حرفه ای مانند Dreamweaver یا Rad PHP هستند که در یک محیط ویژوال و IDE امکان کدنویسی و طراحی نرم افزاهای PHP را برای شما فراهم می آورند .
    2. سرور اجرا کننده PHP :
      در اینجا 2 حالت مختلف به وجود می آید :
      1. اجرای PHP بروی کامپیوتر خودتان : چنانچه بخواهید برنامه ها و صفحات وب PHP را بر روی کامپیوتر خود اجرا نمایید ، نیاز به تغییر خاصی ندارید . سیستم عامل های ویندوز ، مک و لینوکس از PHP به طور کامل پشتیانی می کنند . در ویندوز سرور Microsoft IIS و در لینوکس و مک سرور Apache وظیفه اجرا و پردازش فایل های PHP را برعهده دارند . این سرور ها به صورت پیش فرض بر روی سیستم عامل های نام برده نصب هستند و نیاز به هیچ برنامه جانبی نیست .
      2. اجرای PHP بروی یک سرور هاست ( اینترنتی ) : در اینجا نیز کار بسیار راحت است . شما کافی است هاست خود را بروی یک سرور خریداری نمایید که از PHP پشتیانی می کند . سپس کافی است فایل های ساخته شده خود را بروی آنها Upload کرده و اجرا نمایید . موتور این سرور ها صفحات را اجرا کرده و سپس خروجی را به مرورگر کاربر ارسال می کنند . به علت رایگان بودن PHP سرور های هاست PHP بسیار ارزان و در دسترس هستند .
    3. یک مرورگر وب :
      شما برای مشاهده صفحات PHP نیاز به یک مرورگر دارید که بر روی تمام سیستم عامل ها موجود است . تمامی مرورگرهای مطرح موجود ، به طور کامل از PHP پشتیانی می کنند .
    [HR][/HR] منابع دانلود و راهنمای PHP :
    در این قسمت منابع اصلی دانلود PHP و پایگاه داده آن یعنی MySQL را به شما معرفی کرده ایم :

    1. سایت رسمی و مرجع آموزش PHP به زبان انگلیسی : PHP: Hypertext Preprocessor
    2. دانلود PHP و ابزارهای جانبی: PHP: Downloads
    3. دانلود MySQL از سایت رسمی: MySQL :: MySQL Downloads (Generally Available)
    4. دانلود سرور Apache از سایت رسمی: Download - The Apache HTTP Server Project

    [HR][/HR]
     
    یک شخص از این تشکر کرد.
  3. کاربر ارشد

    تاریخ عضویت:
    ‏6/9/12
    ارسال ها:
    14,323
    تشکر شده:
    2,698
    امتیاز دستاورد:
    0
    حرفه:
    daneshjo
    پاسخ : آموزش PHP

    [h=2]ساختار دستوری Syntax در PHP[/h] ساختار دستوری PHP :
    صفحات PHP از دو جزء اصلی تشکیل شده اند :

    1. تگ های HTML : ساختار صفحه های PHP ، کاملا با صفحه های HTML یکسان هستند . با این تفاوت که در این صفحات ، علاوه بر تگ های HTML می توان اسکریپت هایی را به زبان PHP برای اجرای دستورات مورد نظر خود ، به آنها اضافه نمایید . در این صفحات سایر اجزا با همان کد و ساختار صفحات HTML تعریف می شوند .
    2. اسکریپت های PHP : می توانید در هر جای صفحات PHP ، کدها و دستورات خود را که با این زبان نوشته اید را اضافه کنید .
      هر بلوک اسکریپت PHP ، همواره با عبارت php?> شروع شده و به عبارت <? خاتمه می یابد . دستورات مورد نظر بین این دو عبارت قرار می گیرند . هر خط دستوری PHP باید با عبارت سمیکلون ; به پایان برسد . این عبارت باعث می شود تا کدهای دستوری ، از هم جدا شده و قابل تشخیص شوند .
    شکل کلی ( Syntax ) نوشتن یک اسکریپت PHP به صورت زیر است :
    [TABLE="class: ex"]
    [TR]
    [TD="class: prname"] Syntax [/TD]
    [TD="class: prdes, align: left"] <?php
    .... php کدها و دستورات مورد نظر به زبان .... ;
    ?>

    مثال :
    <?php
    echo "Hello World" ;
    ?> [/TD]
    [/TR]
    [/TABLE]
    صفحات PHP بر روی سرور اجرا شده و سپس نتایج خروجی به صورت کدهای ساده شده HTML و جاوا اسکریپت ، برای اجرا به مرورگر کامپیوتر کاربر ارسال می شود .
    نکته : در نسخه های جدید PHP ، می توان ساختار اسکریپت را به صورت خلاصه شده زیر نیز نوشت . اما برای سازگاری بهتر با تمامی ورژن ها ، استفاده از متد قبلی توصیه می شود :
    [TABLE="class: ex"]
    [TR]
    [TD="class: prname"] Syntax [/TD]
    [TD="class: prdes, align: left"] <?
    .... php کدها و دستورات مورد نظر به زبان .... ;
    ?>

    مثال :
    <?
    echo "Hello World" ;
    ?> [/TD]
    [/TR]
    [/TABLE]

    [HR][/HR] نحوه قرار دادن اسکریپت های PHP در صفحات :
    در مطلب قبلی ساختار نوشتن اسکریپت ها به زبان PHP را به شما نشان دادیم . پس از نوشتن اسکریپت ها ، آن ها را می توانید در هر جای صفحه قرار دهید. گفتیم که ساختار صفحات PHP کاملا شبیه به صفحات HTML است . در مثال زیر یک صفحه کامل PHP را که در آن اسکریپت هم قرار گرفته به شما نمایش داده ایم . برای مشاهده خروجی عملی مثال بر روی لینک تعیین شده در قسمت خروجی کلیک نمایید :
    [TABLE="class: ex"]
    [TR]
    [TD="class: header, colspan: 2"] Example [/TD]
    [/TR]
    [TR]
    [TD="class: body"] < html >
    < head >
    </head>
    <body>
    < p > This is a HTML Paragraph < /p >
    <?php
    echo "Hello World" ;
    ?>
    </body>
    </html> [/TD]
    [TD="class: header"] کد [/TD]
    [/TR]
    [TR]
    [TD="class: body, align: center"] مشاهده خروجی مثال [/TD]
    [TD="class: header"] خروجی [/TD]
    [/TR]
    [/TABLE]

    [HR][/HR] قرار دادن توضیحات comments در اسکریپت های PHP :
    گاهی اوقات می خواهید توضیحاتی را در صفحه قرار دهید ، تا در مراجعات بعدی راهنمای شما باشند . یا اینکه اگر کسی غیر از خودتان سورس کد صفحه را مطالعه می کند ، بتواند دریابد هر بخش صفحه چیست و برای چه منظور استفاده می شود . توضیحات را می توانید در هر جای صفحه که بخواهید قرار دهید .
    به این توضیحات در طراحی وب comments می گویند . توضیحات توسط مرور گرها نمایش داده نشده و از دید کاربر مخفی هستند و فقط در سورس کد صفحه قابل مشاهده می باشند .
    چنانچه توضیح در حد یک خط باشد ، با قرار دادن کد // در ابتدا خط ، توضیح خود را بعد از آن بنویسید .
    ولی چنانچه حجم توضیح بیش از یک خط باشد ، باید علامت */ را در ابتدای توضیح و علامت /* را در انتهای آن قرار دهید . از این روش برای توضیحات چند خطی استفاده می شود .
    در جدول زیر روش استفاده از هر دو مورد را به صورت عملی به شما نمایش داده ایم :
    [TABLE="class: ex"]
    [TR]
    [TD="class: prname"] Syntax
    توضیح یک خطی [/TD]
    [TD="class: prdes, align: left"] // متن توضیح [/TD]
    [/TR]
    [/TABLE]

    [TABLE="class: ex"]
    [TR]
    [TD="class: prname"] Syntax
    توضیح چند خطی [/TD]
    [TD="class: prdes, align: left"] /*
    خط 1 توضیح
    خط 2 توضیح
    خط 3 توضیح
    ...
    */ [/TD]
    [/TR]
    [/TABLE]
    مثال : درمثال زیر در یک صفحه PHP هم توضیح یک خطی و هم چند خطی قرار داده ایم . دقت کنید که این توضیحات در خروجی نمایش داده نمی شوند :
    [TABLE="class: ex"]
    [TR]
    [TD="class: header, colspan: 2"] Example [/TD]
    [/TR]
    [TR]
    [TD="class: body"] < html >
    < head >
    </head>
    <body>
    < p > This is a HTML Paragraph < /p >
    <?php
    // متن توضیح یک خطی
    echo "Hello World" ;
    /*
    خط 1 توضیح چند خطی
    خط 2 توضیح چند خطی
    ...
    */
    ?>
    </body>
    </html>
    [/TD]
    [TD="class: header"] کد [/TD]
    [/TR]
    [/TABLE]
     
    یک شخص از این تشکر کرد.
  4. کاربر ارشد

    تاریخ عضویت:
    ‏6/9/12
    ارسال ها:
    14,323
    تشکر شده:
    2,698
    امتیاز دستاورد:
    0
    حرفه:
    daneshjo
    پاسخ : آموزش PHP

    [h=2]متغیرها در PHP[/h] نحوه تعریف و استفاده از متغیرها در PHP :
    همانطور که می دانید متغیرها برای نگهداری اطلاعات و سپس استفاده از آنها به کار می روند . زبان PHP از انواع مختلف داده پشتیانی می کند و شما می توانید متغیرهای مورد نظر خود را در صفحات وب تعریف کرده و سپس در هر جای صفحه که می خواهید ، از آنها استفاده نمایید .
    برای تعریف یک متغیر در PHP ، ابتدا علامت $ را قرار داده و سپس نام آن را تعیین می کنید . همچنین می توانید در هنگام تعریف آن را مقدار دهی کرده و یا اینکه بعدا در جای دیگر مقداری را به آن نسبت دهید . انتخاب با شماست .
    شکل کلی تعریف و مقدار متغیرها در PHP به صورت زیر است :
    [TABLE="class: ex"]
    [TR]
    [TD="class: prname"] Syntax [/TD]
    [TD="class: prdes, align: left"] <?php
    $ var_name = value ;
    ?>
    مثال : $ My_Name = " Developer " ;
    $ Int_Num = 12 ; [/TD]
    [/TR]
    [/TABLE]
    نکته : توجه کنید که اگر علامت $ را فراموش کنید ، متغیر تعریف نخواهد شد .
    نکته 2 : زبان PHP در تعریف متغیرها به کوچک و بزرگ بودن حروف حساس است . بنابراین برای مثال متغیر Num با num متفاوت خواهد بود .
    [HR][/HR] قوانین نام گذاری متغیرها در PHP :
    در نامگذاری متغیرها در PHP باید به قوانین زیر توجه نمایید . در غیر اینصورت متغیر شما تعریف نشده و برنامه با مشکل روبرو خواهد شد .

    1. نام یک متغیر حتما بایستی با یک حرف یا علامت _ شروع شود . برای مثال نام های Num یا IntNumber_ صحیح و نام 1int غلط می باشد .
    2. نام متغیرها فقط می تواند شامل حروف ، اعداد و یا علامت _ باشد . برای مثال نام Int_Num صحیح و نامی مثل Int%Num غلط است .
    3. نام یک متغیر نمی تواند شامل فاصله باشد . اگر نام متغیر بیش از یک کلمه است ، باید با علامت _ آن را از هم جدا کرده و یا با بزرگ و کوچک نوشتن حروف ، کلمات را از هم تمایز دهید . برای مثال Int_Num یا IntNum . توجه داشته باشید مثلا نام Int Num غلط است .
    [HR][/HR] انواع متغیرها در PHP :
    برخلاف زبان های برنامه نویسی مثل VB یا ASP.Net در PHP لازم نیست ، نوع داده متغیر تعریف شود . هنگامی که متغیر را تعریف می کنید ، در زمان مقدار دهی ، PHP به طور اتوماتیک نوع داده ای را تبدیل کرده و در متغیر ذخیره می کند . برای مثال اگر یک متغیر را تعریف کرده و سپس مقدار یک عدد را به آن نسبت دهید ، PHP به طور اتومانیک نوع آن متغیر را عددی تعیین می کند . برای مواردی مثل متن و یا boolen نیز وضع به همین ترتیب است .
    در متغیر های تعریف شده در مثال جدول synatx در بالای صفحه ، متغیر متغیر My_Name از نوع متن ( String ) و متغیر Int_Num از نوع عددی ( Integer ) خواهند بود . دقت کنید که مقدار های متنی باید در بین دو علامت " " تعریف شوند . ولی برای عدد اینگونه نیست .

    [HR][/HR]
     
    یک شخص از این تشکر کرد.
  5. کاربر ارشد

    تاریخ عضویت:
    ‏6/9/12
    ارسال ها:
    14,323
    تشکر شده:
    2,698
    امتیاز دستاورد:
    0
    حرفه:
    daneshjo
    پاسخ : آموزش PHP

    [h=2]توابع در PHP[/h] تابع در PHP :
    همانند سایر زبان های برنامه نویسی در PHP نیز ، توابع یکی از مهمترین ابزارها برای طراحی برنامه ها هستند . PHP دارای بیش از 700 تابع درون ساخته است که امکان انجام بسیاری از کارها را را راحتی در اختیار برنامه نویسان قرار می دهد .
    برای دریافت اطلاعات درباره توابع درون ساخته در زبان PHP ، به بخش آموزش مرجع توابع درون ساخته PHP بروید .
    [HR][/HR] تابع چیست و چه کاربری دارد ؟ :
    تابع یک بلوک کد است که توسط یک نام منحصر به فرد در سطح برنامه شناسایی شده و در هر بار فراخوانی دستورات خود را اجرا می نماید .
    قایده استقاده از تابع این است که تا زمانی که فراخوانی نشود ، دستورات آن اجرا نمی شود . بنابراین باید کدهایی را در تابع نوشت ، که نمی خواهیم در هنگام لود شدن و اجرای اولیه صفحات PHP به صورت خودکار ، اجرا شوند .
    همچنین تابع باعث می شود تا برنامه به قطعات کوچکتری تبدیل شده و ساختار منسجمی داشته باشد . هر زمانی هم که می خواهید در برنامه تغییری ایجاد نمایید ، کافی است کد تابعی که شامل آن دستور است را اصلاح نمایید .
    همچنین می توانید در هنگام فراخوانی تابع ها ، پارامترهای لازم و مورد نظر خود را به آنها ارسال نمایید .
    [HR][/HR] تعریف تابع در زبان PHP :
    شکل کلی تعریف تابع در زبان PHP به صورت زیر است :
    تعریف تابع در 7 با کلمه کلیدی function آغاز شده و سپس نام آن قرار می گیرد . نام تابع باید منحصر به فرد و غیر تکراری باشد . از قوانین زیر در نام گذاری توابع در 7 استفاده می شود :

    1. نام یک تابع حتما بایستی با یک حرف یا علامت _ شروع شود . برای مثال نام های MyFunction یا MyFunction_ صحیح و نام 1function غلط می باشد .
    2. نام توابع فقط می تواند شامل حروف ، اعداد و یا علامت _ باشد . برای مثال نام My_Function صحیح و نامی مثل My%Function غلط است .
    3. نام یک تابع نمی تواند شامل فاصله باشد . اگر نام تابع بیش از یک کلمه است ، باید با علامت _ آن را از هم جدا کرده و یا با بزرگ و کوچک نوشتن حروف ، کلمات را از هم تمایز دهید . برای مثال My_Function یا MyFunction . توجه داشته باشید مثلا نام My Functionغلط است .
    4. نام توابع نمی تواند معادل کلمات کلیدی در زبان 7 باشد . برای مثال نام یک تابع نمی تواند print باشد .
    پس از نام تابع پرانتز باز و بسته قرار می دهیم . همچنین دستورات تابع بین دو { و } قرار می گیرد . هر کدی که بین این دوعلامت باشد ، جزء تابع خواهد بود .
    [TABLE="class: ex"]
    [TR]
    [TD="class: prname"] Syntax [/TD]
    [TD="class: prdes, align: left"] <?php
    function نام تابع ( )
    {
    ...
    دستورات تابع
    ....
    }
    ?>

    مثال :
    <?php
    function My_Function ( )
    {
    ...
    echo " PHP Toturail " ;
    ....
    }
    ?> [/TD]
    [/TR]
    [/TABLE]

    [HR][/HR] فراخوانی تابع در PHP :
    در بخش قبل گفتیم که دستورات یک تابع تا زمانی که فراخوانی نشود ، اجرا نخواهد شد . برای اجرای دستورات یک تابع ، باید آن را فراخوانی کرد .
    در هر جای برنامه و هر چند بار که نیاز داشته باشید ، می توانید یک تابع را فراخوانی نمایید . برای فراخوانی یک تابع نام آن را نوشته و پس از آن دو پرانتز باز و بسته به همراه یک عبارت سمیکلون ; قرار می دهیم .
    شکل کلی فراخوانی یک تابع به صورت زیر است :
    [TABLE="class: ex"]
    [TR]
    [TD="class: prname"] Syntax [/TD]
    [TD="class: prdes, align: left"] <?php
    نام تابع ( ) ;
    ?>

    مثال :
    <?php
    My_Function ( ) ;
    ?> [/TD]
    [/TR]
    [/TABLE]
    مثال : در مثال زیر ابتدا یک تابع را تعریف کرده و سپس در نقطه ای دیگر از صفحه آن را فراخوانی نموده ایم . برای مشاهده خروجی بر روی خروجی مثال کلیک نمایید :
    [TABLE="class: ex"]
    [TR]
    [TD="class: header, colspan: 2"] Example [/TD]
    [/TR]
    [TR]
    [TD="class: body"] < html >
    < head >
    </head>
    <body>
    <?php
    function Show_Msg ( ) تعریف تابع
    {
    echo " You are learning PHP " ;
    }
    ?>
    < p > This is a HTML Paragraph < /p >
    <?php
    Show_Msg ( ) ; فراخوانی تابع
    ?>
    </body>
    </html> [/TD]
    [TD="class: header"] کد [/TD]
    [/TR]
    [TR]
    [TD="class: body, align: center"] مشاهده خروجی مثال [/TD]
    [TD="class: header"] خروجی [/TD]
    [/TR]
    [/TABLE]

    [HR][/HR]
     
    یک شخص از این تشکر کرد.
  6. کاربر ارشد

    تاریخ عضویت:
    ‏6/9/12
    ارسال ها:
    14,323
    تشکر شده:
    2,698
    امتیاز دستاورد:
    0
    حرفه:
    daneshjo
    پاسخ : آموزش PHP

    [h=2]ارسال پارامتر ( Parameter ) به تابع[/h] مقدمه :
    در بخش قبل با نحوه تعریف و استفاده از توابع در PHP آشنا شدید . در این بخش می خواهیم نحوه ارسال پارامترهای لازم به تابع را توضیح دهیم .
    پارامتر چیست و چه کاربردی دارد :
    پارامتر در واقع متغیری است که می توان مقدار آن را در هنگام اجرای تابع ، به تابع ارسال نمود . سپس تابع مقدار این پارامترها را در دستورات خود استفاده می کند .
    هر تابع می تواند چندین پارامتر داشته باشد . مقادیری که می خواهیم به تابع ارسال کنیم تا در اجرای دستورات استفاده شوند را توسط پارامترهای تعیین شده به تابع ارسال می کنیم . فرض کنید که یک تابع عملیات جمع دو متغیر را انجام می دهد . می توانیم در هر بار فراخوانی تابع ، دو مقداری که مورد نظرمان است را توسط دو پارامتر به تابع ارسال کنیم ، تا آن دو را با هم جمع نماید . پارامترهای مورد نظر خود را به ترتیب در پرانتز مقابل نام تابع به ترتیب تعریف کرده و چنانچه بیش از یکی هستند ، آنها را با علامت کاما ( , ) از هم جدا می کنیم . در PHP لزومی به تعیین نوع داده ای پارامترها نیست .
    پس از تعریف پارامترهای لازم برای تابع خود ، در هنگام فراخوانی تابع ، مقادیر مورد نظر برای هر پارامتر را به همان ترتیبی که آنها را تعریف کرده ایم ، در پرانتز مقابل نام تابع قرار می دهیم .
    شکل کلی تعریف پارامترها در PHP به صورت زیر است :
    [TABLE="class: ex"]
    [TR]
    [TD="class: prname"] Syntax [/TD]
    [TD="class: prdes, align: left"] <?php
    function نام تابع ( Parameter 1 , Parameter 2 , ... )
    {
    ...
    دستورات تابع
    ....
    }
    ?>

    مثال :
    <?php
    function My_Function ( $txt_Name , $txt_Family )
    {
    ...
    echo ( $txt_Name , $txt_Family ) ;
    ....
    }
    ?> [/TD]
    [/TR]
    [/TABLE]

    [HR][/HR] ارسال مقادیر پارامترها به تابع :
    در بخش بالا نحوه تعریف پارمترها برای تابع را نشان دادیم . پس از تعریف پارامترهای مورد نظر ، باید مقادیر لازم را به تابع ارسال کرد .
    برای این منظور در هنگام فراخوانی تابع ، مقادیر پارامترها را به همان ترتیب که تعریف کرده ایم ، در پرانتز مقابل نام آن قرار می دهیم . این کار را در مثال های زیر در عمل به شما نمایش داده ایم :
    مثال : در مثال زیر یک تابع را تعریف کرده ایم که دو مقدار نام و نام خانوادگی را به صورت دو پارامتر دریافت کرده و سپس در هنگام اجرای دستورات خود مقدار آنها را در خروجی نمایش می دهد :
    [TABLE="class: ex"]
    [TR]
    [TD="class: header, colspan: 2"] Example [/TD]
    [/TR]
    [TR]
    [TD="class: body"] < html >
    < head >
    </head>
    <body>
    <?php
    function Show_Name ( $txt_Name , $txt_Family ) تعریف تابع و پارامترهای لازم
    {
    echo "My Name is : " . $txt_Name . " " . $txt_Family ;
    }
    ?>
    < p > This is a HTML Paragraph < /p >
    <?php
    Show_Name ( "Mehrdad" , "Fatahi" ) ; فراخوانی تابع و ارسال پارامترها
    ?>
    </body>
    </html> [/TD]
    [TD="class: header"] کد [/TD]
    [/TR]
    [TR]
    [TD="class: body, align: center"] مشاهده خروجی مثال
    [/TD]
    [TD="class: header"] خروجی [/TD]
    [/TR]
    [/TABLE]

    [HR][/HR] [HR][/HR]
     
    یک شخص از این تشکر کرد.
  7. کاربر ارشد

    تاریخ عضویت:
    ‏6/9/12
    ارسال ها:
    14,323
    تشکر شده:
    2,698
    امتیاز دستاورد:
    0
    حرفه:
    daneshjo
    پاسخ : آموزش PHP

    [h=2]آموزش PHP - طراحی و کار با فرم ها در پی اچ پی[/h] فرم ها در PHP :
    از فرم ها در PHP ، برای دریافت اطلاعات از کاربر استفاده می شود . فرم های HTML می توانند شامل یک یا چندین کنترل کادر متن ، دکمه های انتخابی و یا منوهای کرکره ای باشند . کاربر بایستی مقادیر لازم را در کنترل های تعیین شده وارد کند .
    پس از وارد نمودن اطلاعات لازم ، کاربر باید فرم را ارسال ( Submit ) کنند . پس از ارسال فرم ، اطلاعات آن به یک فرم و یا صفحه دیگری ارسال می شود تا در مقصد مورد استفاده قرار گیرند .
    برای مثال شما اطلاعات ثبت نام در سایت را از کاربر دریافت کرده و سپس در یک صفحه دیگر همان اطلاعات را به کاربر نمایش داده تا در صورت تایید نهایی ، در پایگاه داده ذخیره شوند .
    همانطور که در بخش آموزش HTML و در قسمت آموزش فرم های HTML ، نحوه استفاده از تگ < form > برای ایجاد فرم های HTML را بیان کردیم . کلیه کنترل های دریافت اطلاعات و محتویات فرم باید در دورن تگ فرم قرار بگیرند .
    شکل کلی و نمونه طراحی یک فرم HTML ساده در صفحات PHP به صورت زیر است . این فرم دارای دو کادر متن برای دریافت نام و سن از کاربر و یک دکمه ارسال ( Submit ) است ، که با فشردن آن فرم به مقصد ارسال می شود :
    [TABLE="class: ex"]
    [TR]
    [TD="class: prname"] Example
    [/TD]
    [TD="class: prdes, align: left"] <form action="welcome.php" method="post">
    Name: <input type="text" name="fname" />
    Age: <input type="text" name="age" />
    <input type="submit" />
    </form> [/TD]
    [/TR]
    [/TABLE]
    تگ فرم دو خاصیت مهم دارد که تعیین کننده نحوه عملکرد فرم است . خاصیت action و method . در ابتدا به تشریح کارایی این دو خاصیت کلیدی در فرم ها می پردازیم :

    • خاصیت action : این خاصیت از نوع آدرس ( URL ) بوده و تعیین کننده آدرس فرم یا صفحه ای است که قرار است اطلاعات فرم به آن ارسال شود . اطلاعات ارسال شده در صفحه مقصد مورد استفاده و پردازش قرار می گیرد .
      برای مثال اگر مقدار آن را برابر با submit.php قرار دهیم ، اطلاعات فرم پس از submit شدن به صفحه تعیین شده ارسال شده و مرورگر نیز به همان صفحه هدایت می شود .
      تعیین مقدار این خاصیت اجباری است و اگر مقدار آن را خالی رها کنیم ، برنامه دچار نقص می شود . در این حالت فرم به یک آدرس پیش فرض مثل form.html می رود .
    • خاصیت method : این خاصیت روش ارسال اطلاعات فرم به صفحه را مقصد تعیین کرده و می تواند یکی از دو مقدار GET یا POST را داشته باشد .
      این دو حالت با هم تفاوت عملکرد نداشته و فقط در نحوه ارسال اطلاعات از روش های متفاوتی استفاده می کنند . در جدول زیر به تشزیح نحوه استفاده از هر 2 متد پرداخته ایم :
      • متد GET : در این روش اطلاعات بصورت ساده و کد نشده منتقل میشوند. این روش دقیقا مشابه اینه که اطلاعات رو بصورت Query به URL اضافه کرده باشیم و وقتی فرم رو Submit می کنیم، این اطلاعات خودش به URL اضافه میشه و قابل دیدن میشه. باید توجه داشت که اطلاعات حساسی مثل Password نباید در معرض دید قرار بگیره پس نباید برای فرمی که اطلاعات مهمی داره از GET استفاده کنیم تا اطلاعات فرم توی Address Bar قابل رویت نشه. به اضافه اینکه IE توی حجم اطلاعات GET محدودیت داره. به این صورت که وقتی اطلاعات فرم بصورت Query به URL اضافه میشه، طول این URL حداکثر میتونه 2083 کاراکتر باشه. در روش GET، چون اطلاعات فرم کد نمیشوند و ساده منتقل میشوند ، حجم کمتری دارند . اطلاعات فرم در این حالت، توسط متد GET_$ در صفحه مقصد قابل دریافت است . همچنین در روش GET از Upload خبری نیست، یعنی با GET نمیشه آپلود کرد.
        پس از submit فرم در این روش ، اطلاعات فرم به صورتی که در کد زیر نمایش داده شده به آدرس صفحه اضافه شده و به صفحه مقصد منتقل می شوند :
        [TABLE="class: ex"]
        [TR]
        [TD="class: prname"] Syntax
        [/TD]
        [TD="class: prdes, align: left"] آموزش برنامه نويسی - طراحی وب سایت - وبلاگ fname = Ali & age = 26 [/TD]
        [/TR]
        [/TABLE]

        نمونه این روش را مطمئنا قبلا در بسیاری از سایت ها مشاهده کرده اید .
      • متد POST : در این روش اطلاعات فرم برای ارسال به صفحه مقصد کد شده و به صورت مخفی منتقل می شوند . در این حالت دیگر اطلاعات به صورت نمایان در آدرس بار مرورگر قابل مشاهده نبوده و برای ارسال اطلاعات حساس مثل رمز عبور مناسب است .
        اطلاعات ارسال شده با این متد در صفحه مقصد توسط متد POST_$ قابل دریافت است .
    [HR][/HR] فرم چگونه مقادیر را خوانده و به صفحه مقصد ارسال می کند :
    همانطور که مشاهده کردید در یک فرم همواره چندین کنترل ورودی اطلاعات وجود دارد . هنگامی که فرم submit می شود ، مرورگر به صورت اتوماتیک تمامی مقادیر کنترل های ورودی به همراه نام آن کنترل ها ( خاصیت name هر کنترل ) را خوانده و به آدرس صفحه اضافه می کند ( این کار در متد POST به صورت مخفی انجام میشود ) . سپس مرورگر صفحه را به همراه جفت نام کنترل ها و مقادیرشان به صفحه مقصد ، ارسال می کند .
    در طی انجام این عملیات ، مرورگر ابتدا آدرس صفحه مقصد را قرار داده و سپس یک علامت ? می گذارد . پس از علامت ? ، به ترتیب نام کنترل های ورودی اطلاعات و مقادیرشان را اضافه می کند . هر کدام از جفت نام کنترل ها و مقادیرشان را با یک علامت & از هم جدا می شوند .
    توجه داشته باشید که عملیات خواندن نام کنترل های ورودی اطلاعات و مقادیرشان و در نهایت ارسال آنها به صفحه مقصد به صورت اتوماتیک توسط مرورگر انجام شده و نیازی نیست ، شما کد خاصی را بنویسید .
    در مثال زیر به تشریح کلیه مطالب گفته شده در طی یک مثال واقعی می پردازیم .
    [HR][/HR] مثال عملی در طراحی یک فرم HTML و سپس ارسال آن به مقصد :
    مثال : در مثال زیر یک فرم طراحی کرده ایم که از کاربر نام و سن وی را سوال می کند . سپس در صورت کلیک شدن دکمه فرمان Submit ، فرم به همراه مقادیر وارد شده در کنترل های متن ، به صفحه receive.php ارسال می شوند و آن مقادیر در صفحه جدید مجدد به کاربر نمایش داده می شود .
    نکته مهم : توجه داشته باشید که اطلاعات با استفاده از متد get ارسال شده است . بنابراین به نوار آدرس مرورگر دقت نمایید .
    برای مشاهده خروجی مثال و سپس ارسال مقادیر به صفحه مقصد ، بر روی لینک تعیین شده در خروجی مثال کلیک نمایید :
    [TABLE="class: ex"]
    [TR]
    [TD="class: header, colspan: 2"] Example
    [/TD]
    [/TR]
    [TR]
    [TD="class: body"] < html >
    < head >
    </head>
    <body>
    <form action="recevie.php" method="get">
    Name:
    <input type="text" name="fname" />
    Age:
    <input type="text" name="age" />
    <input type="submit" />
    </form>
    </body>
    </html> [/TD]
    [TD="class: header"] کد [/TD]
    [/TR]
    [TR]
    [TD="class: body, align: center"] مشاهده خروجی مثال [/TD]
    [TD="class: header"] خروجی [/TD]
    [/TR]
    [/TABLE]
    پس از ارسال صفحه و اطلاعات به صفحه receive.php ، این اطلاعات توسط این صفحه دریافت شده و به کاربر نمایش داده می شود . کد این صفحه نیز به صورت زیر است :
    در قسمت های بعدی آموزش PHP ، به توضیح کامل روش دریافت اطلاعات ارسالی فرم ها می پردازیم .
    [TABLE="class: ex"]
    [TR]
    [TD="class: prname"] Example [/TD]
    [TD="class: prdes, align: left"] <html>
    <body>
    Hello < ? php echo $_GET [ " fname " ] ; ? > ! < br / >
    You are < ? php echo $_GET [ " age " ] ; ? > years old.
    </body>
    </html>
    [/TD]
    [/TR]
    [/TABLE]

    [HR][/HR] [HR][/HR]
     
    یک شخص از این تشکر کرد.
  8. کاربر ارشد

    تاریخ عضویت:
    ‏6/9/12
    ارسال ها:
    14,323
    تشکر شده:
    2,698
    امتیاز دستاورد:
    0
    حرفه:
    daneshjo
    پاسخ : آموزش PHP

    [h=2]آموزش PHP - طراحی و کار با فرم ها در پی اچ پی[/h] فرم ها در PHP :
    از فرم ها در PHP ، برای دریافت اطلاعات از کاربر استفاده می شود . فرم های HTML می توانند شامل یک یا چندین کنترل کادر متن ، دکمه های انتخابی و یا منوهای کرکره ای باشند . کاربر بایستی مقادیر لازم را در کنترل های تعیین شده وارد کند .
    پس از وارد نمودن اطلاعات لازم ، کاربر باید فرم را ارسال ( Submit ) کنند . پس از ارسال فرم ، اطلاعات آن به یک فرم و یا صفحه دیگری ارسال می شود تا در مقصد مورد استفاده قرار گیرند .
    برای مثال شما اطلاعات ثبت نام در سایت را از کاربر دریافت کرده و سپس در یک صفحه دیگر همان اطلاعات را به کاربر نمایش داده تا در صورت تایید نهایی ، در پایگاه داده ذخیره شوند .
    همانطور که در بخش آموزش HTML و در قسمت آموزش فرم های HTML ، نحوه استفاده از تگ < form > برای ایجاد فرم های HTML را بیان کردیم . کلیه کنترل های دریافت اطلاعات و محتویات فرم باید در دورن تگ فرم قرار بگیرند .
    شکل کلی و نمونه طراحی یک فرم HTML ساده در صفحات PHP به صورت زیر است . این فرم دارای دو کادر متن برای دریافت نام و سن از کاربر و یک دکمه ارسال ( Submit ) است ، که با فشردن آن فرم به مقصد ارسال می شود :
    [TABLE="class: ex"]
    [TR]
    [TD="class: prname"] Example
    [/TD]
    [TD="class: prdes, align: left"] <form action="welcome.php" method="post">
    Name: <input type="text" name="fname" />
    Age: <input type="text" name="age" />
    <input type="submit" />
    </form> [/TD]
    [/TR]
    [/TABLE]
    تگ فرم دو خاصیت مهم دارد که تعیین کننده نحوه عملکرد فرم است . خاصیت action و method . در ابتدا به تشریح کارایی این دو خاصیت کلیدی در فرم ها می پردازیم :

    • خاصیت action : این خاصیت از نوع آدرس ( URL ) بوده و تعیین کننده آدرس فرم یا صفحه ای است که قرار است اطلاعات فرم به آن ارسال شود . اطلاعات ارسال شده در صفحه مقصد مورد استفاده و پردازش قرار می گیرد .
      برای مثال اگر مقدار آن را برابر با submit.php قرار دهیم ، اطلاعات فرم پس از submit شدن به صفحه تعیین شده ارسال شده و مرورگر نیز به همان صفحه هدایت می شود .
      تعیین مقدار این خاصیت اجباری است و اگر مقدار آن را خالی رها کنیم ، برنامه دچار نقص می شود . در این حالت فرم به یک آدرس پیش فرض مثل form.html می رود .
    • خاصیت method : این خاصیت روش ارسال اطلاعات فرم به صفحه را مقصد تعیین کرده و می تواند یکی از دو مقدار GET یا POST را داشته باشد .
      این دو حالت با هم تفاوت عملکرد نداشته و فقط در نحوه ارسال اطلاعات از روش های متفاوتی استفاده می کنند . در جدول زیر به تشزیح نحوه استفاده از هر 2 متد پرداخته ایم :
      • متد GET : در این روش اطلاعات بصورت ساده و کد نشده منتقل میشوند. این روش دقیقا مشابه اینه که اطلاعات رو بصورت Query به URL اضافه کرده باشیم و وقتی فرم رو Submit می کنیم، این اطلاعات خودش به URL اضافه میشه و قابل دیدن میشه. باید توجه داشت که اطلاعات حساسی مثل Password نباید در معرض دید قرار بگیره پس نباید برای فرمی که اطلاعات مهمی داره از GET استفاده کنیم تا اطلاعات فرم توی Address Bar قابل رویت نشه. به اضافه اینکه IE توی حجم اطلاعات GET محدودیت داره. به این صورت که وقتی اطلاعات فرم بصورت Query به URL اضافه میشه، طول این URL حداکثر میتونه 2083 کاراکتر باشه. در روش GET، چون اطلاعات فرم کد نمیشوند و ساده منتقل میشوند ، حجم کمتری دارند . اطلاعات فرم در این حالت، توسط متد GET_$ در صفحه مقصد قابل دریافت است . همچنین در روش GET از Upload خبری نیست، یعنی با GET نمیشه آپلود کرد.
        پس از submit فرم در این روش ، اطلاعات فرم به صورتی که در کد زیر نمایش داده شده به آدرس صفحه اضافه شده و به صفحه مقصد منتقل می شوند :
        [TABLE="class: ex"]
        [TR]
        [TD="class: prname"] Syntax
        [/TD]
        [TD="class: prdes, align: left"] آموزش برنامه نويسی - طراحی وب سایت - وبلاگ fname = Ali & age = 26 [/TD]
        [/TR]
        [/TABLE]

        نمونه این روش را مطمئنا قبلا در بسیاری از سایت ها مشاهده کرده اید .
      • متد POST : در این روش اطلاعات فرم برای ارسال به صفحه مقصد کد شده و به صورت مخفی منتقل می شوند . در این حالت دیگر اطلاعات به صورت نمایان در آدرس بار مرورگر قابل مشاهده نبوده و برای ارسال اطلاعات حساس مثل رمز عبور مناسب است .
        اطلاعات ارسال شده با این متد در صفحه مقصد توسط متد POST_$ قابل دریافت است .
    [HR][/HR] فرم چگونه مقادیر را خوانده و به صفحه مقصد ارسال می کند :
    همانطور که مشاهده کردید در یک فرم همواره چندین کنترل ورودی اطلاعات وجود دارد . هنگامی که فرم submit می شود ، مرورگر به صورت اتوماتیک تمامی مقادیر کنترل های ورودی به همراه نام آن کنترل ها ( خاصیت name هر کنترل ) را خوانده و به آدرس صفحه اضافه می کند ( این کار در متد POST به صورت مخفی انجام میشود ) . سپس مرورگر صفحه را به همراه جفت نام کنترل ها و مقادیرشان به صفحه مقصد ، ارسال می کند .
    در طی انجام این عملیات ، مرورگر ابتدا آدرس صفحه مقصد را قرار داده و سپس یک علامت ? می گذارد . پس از علامت ? ، به ترتیب نام کنترل های ورودی اطلاعات و مقادیرشان را اضافه می کند . هر کدام از جفت نام کنترل ها و مقادیرشان را با یک علامت & از هم جدا می شوند .
    توجه داشته باشید که عملیات خواندن نام کنترل های ورودی اطلاعات و مقادیرشان و در نهایت ارسال آنها به صفحه مقصد به صورت اتوماتیک توسط مرورگر انجام شده و نیازی نیست ، شما کد خاصی را بنویسید .
    در مثال زیر به تشریح کلیه مطالب گفته شده در طی یک مثال واقعی می پردازیم .
    [HR][/HR] مثال عملی در طراحی یک فرم HTML و سپس ارسال آن به مقصد :
    مثال : در مثال زیر یک فرم طراحی کرده ایم که از کاربر نام و سن وی را سوال می کند . سپس در صورت کلیک شدن دکمه فرمان Submit ، فرم به همراه مقادیر وارد شده در کنترل های متن ، به صفحه receive.php ارسال می شوند و آن مقادیر در صفحه جدید مجدد به کاربر نمایش داده می شود .
    نکته مهم : توجه داشته باشید که اطلاعات با استفاده از متد get ارسال شده است . بنابراین به نوار آدرس مرورگر دقت نمایید .
    برای مشاهده خروجی مثال و سپس ارسال مقادیر به صفحه مقصد ، بر روی لینک تعیین شده در خروجی مثال کلیک نمایید :
    [TABLE="class: ex"]
    [TR]
    [TD="class: header, colspan: 2"] Example
    [/TD]
    [/TR]
    [TR]
    [TD="class: body"] < html >
    < head >
    </head>
    <body>
    <form action="recevie.php" method="get">
    Name:
    <input type="text" name="fname" />
    Age:
    <input type="text" name="age" />
    <input type="submit" />
    </form>
    </body>
    </html> [/TD]
    [TD="class: header"] کد [/TD]
    [/TR]
    [TR]
    [TD="class: body, align: center"] مشاهده خروجی مثال [/TD]
    [TD="class: header"] خروجی [/TD]
    [/TR]
    [/TABLE]
    پس از ارسال صفحه و اطلاعات به صفحه receive.php ، این اطلاعات توسط این صفحه دریافت شده و به کاربر نمایش داده می شود . کد این صفحه نیز به صورت زیر است :
    در قسمت های بعدی آموزش PHP ، به توضیح کامل روش دریافت اطلاعات ارسالی فرم ها می پردازیم .
    [TABLE="class: ex"]
    [TR]
    [TD="class: prname"] Example [/TD]
    [TD="class: prdes, align: left"] <html>
    <body>
    Hello < ? php echo $_GET [ " fname " ] ; ? > ! < br / >
    You are < ? php echo $_GET [ " age " ] ; ? > years old.
    </body>
    </html> [/TD]
    [/TR]
    [/TABLE]
     
    یک شخص از این تشکر کرد.
  9. کاربر ارشد

    تاریخ عضویت:
    ‏6/9/12
    ارسال ها:
    14,323
    تشکر شده:
    2,698
    امتیاز دستاورد:
    0
    حرفه:
    daneshjo
    پاسخ : آموزش PHP

    [h=2]فرم ها در PHP - متد method get و متغیر GET_$[/h] متد get :
    در بخش قبل در قسمت آموزش فرم ها در PHP به شما نمایش دادیم که چگونه یک فرم ساده HTML را طراحی کرده و اطلاعات آن را به یک صفحه دیگر برای پردازش و استفاده انتقال دهید .
    همانطور که گفتیم 2 روش برای انتقال اطلاعات فرم ها در PHP وجود دارد . متد get و متد post . در این بخش می خواهیم نحوه ارسال اطلاعات یک فرم توسط متد get و سپس دریافت اطلاعات در صفحه مقصد ، توسط متغیر GET_$ را تشریح کنیم .
    [HR][/HR] نحوه کار متد get :
    هنگامی که یک فرم را به وسیله متد get ارسال می کنید ، مرورگر به صورت اتوماتیک نام کنترل های درون فرم به همراه مقادیرشان را به آدرس صفحه اضافه کرده و سپس صفحه را به صفحه مقصد ارسال می کند . در این حالت مرورگر جفت نام کنترل های فرم و مقدار آنها را با علامت & از هم جدا می کند .
    فرض کنید که یک فرم به شکل زیر طراحی کرده اید . در این فرم دو کنترل کادر متن داریم که از کاربر نام و سن آن را پرسیده است .
    [TABLE="class: ex"]
    [TR]
    [TD="class: header, colspan: 2"] Example [/TD]
    [/TR]
    [TR]
    [TD="class: body"] <form action="recevie.php" method="get" >
    Name:
    <input type="text" name="fname" />
    Age:
    <input type="text" name="age" />
    <input type="submit" />
    </form> [/TD]
    [TD="class: header"] کد [/TD]
    [/TR]
    [TR]
    [TD="class: body, align: center"] مشاهده خروجی مثال [/TD]
    [TD="class: header"] خروجی [/TD]
    [/TR]
    [/TABLE]
    هنگامی که کاربر اطلاعات خواسته شده را در فرم وارد نموده و آن را submit می کند ، 2 اتفاق می افتد :

    1. اول اینکه مرورگر به صفحه تعیین شده در خاصیت action یعنی صفحه receive.php ارسال می شود .
    2. دوم اینکه مرورگر نام کنترل های متن و مقادیرشان را به صورت زیر به آدرس صفحه اضافه کرده وآن صفحه را به مقصد ارسال می کند :
      آدرس در نوار آدرس مرورگر به صورت زیر در خواهد آمد . در این مثال فرض کرده ایم که کاربر برای نام مقدار ali و برای سن مقدار 22 را وارد کرده است : [TABLE="class: ex"]
      [TR]
      [TD="class: prname"] Syntax
      [/TD]
      [TD="class: prdes, align: left"] آموزش برنامه نويسی - طراحی وب سایت - وبلاگ fname = Ali & age = 22 [/TD]
      [/TR]
      [/TABLE]
    چند نکته مهم :
    در روش ارسال get ، اطلاعات درون فرم از طریق نوار آدرس مرورگر نمایش داده شده و بنابراین در معرض دید سایرین بوده و همچنین اطلاعت به راحتی حک می شوند . به همین دلیل نباید از این روش در ارسال اطلاعات حساس مثل رمز عبور و ... استفاده کرد و برای ارسال آنها از متد post استفاده کرد .
    دوم اینکه حجم اطلاعاتی که با این روش می توانید ارسال نمایید ، محدود است .
    [HR][/HR] دریافت اطلاعات ارسالی در صفحه مقصد و استفاده از آنها - متغیر GET_$ :
    پس از اینکه کاربر با استفاده از متد get اطلاعات فرم خود را به صفحه مقصد ارسال نمود ، باید آن اطلاعات را در صفحه مقصد دریافت کرده و از آنها استفاده نماید .
    برای این منظور در صفحه مقصد از متغیر از پیش تعیین شده ، GET_$ برای دریافت اطلاعات ارسالی استفاده می شود . می توانید به تعداد متغیر های ارسالی به صفحه از متغیر GET_$ استفاده نمایید . فقط باید همان نامی که در فرم صفحه مبدا برای متغیر تعیین شده و همچنین در نوار آدرس مرورگر است ، استفاده نمایید .
    تشریح روش با یک مثال عملی :
    مطالب تشریح شده همراه با کد مورد نیاز آن را در مثال عملی زیر نمایش می دهیم .
    کد لازم برای دریافت مقادیر متغیرهای ارسالی ، که در فرم بالای صفحه ارسال شده است به صورت زیر است . در فرم دو متغیر fname و age داشتیم ، که در کد صفحه مقصد آن ها را به روش زیر دریافت کرده و در خروجی دوباره استفاده نموده ایم . برای مشاهده عملی روند ، بر روی گزینه مشاهده خروجی مثال کلیک نمایید :
    [TABLE="class: ex"]
    [TR]
    [TD="class: header, colspan: 2"] Example
    [/TD]
    [/TR]
    [TR]
    [TD="class: body"] <html>
    <body>
    Hello < ? php echo $_GET [ " fname " ] ; ? > ! < br / >
    You are < ? php echo $_GET [ " age " ] ; ? > years old.
    </body>
    </html>
    [/TD]
    [TD="class: header"] کد [/TD]
    [/TR]
    [TR]
    [TD="class: body, align: center"] مشاهده خروجی مثال [/TD]
    [TD="class: header"] خروجی [/TD]
    [/TR]
    [/TABLE]
     
    یک شخص از این تشکر کرد.
  10. کاربر ارشد

    تاریخ عضویت:
    ‏6/9/12
    ارسال ها:
    14,323
    تشکر شده:
    2,698
    امتیاز دستاورد:
    0
    حرفه:
    daneshjo
    پاسخ : آموزش PHP

    [h=2]فرم ها در PHP - متد method post و متغیر POST_$[/h] متد post :
    در بخش قبل در قسمت آموزش فرم ها در PHP به شما نمایش دادیم که چگونه یک فرم ساده HTML را طراحی کرده و اطلاعات آن را به یک صفحه دیگر برای پردازش و استفاده انتقال دهید .
    همانطور که گفتیم 2 روش برای انتقال اطلاعات فرم ها در PHP وجود دارد . متد get و متد post . در این بخش می خواهیم نحوه ارسال اطلاعات یک فرم توسط متد post و سپس دریافت اطلاعات در صفحه مقصد ، توسط متغیر POST_$ را تشریح کنیم .
    [HR][/HR] نحوه کار متد post :
    هنگامی که یک فرم را به وسیله متد post ارسال می کنید ، مرورگر به صورت اتوماتیک نام کنترل های درون فرم به همراه مقادیرشان را خوانده و کد می کند . سپس صفحه را به صفحه مقصد ارسال می کند . در این حالت مرورگر جفت نام کنترل های فرم و مقدار را به صورت مخفی و کد شده ، برخلاف متد get که به صورت نمایان این کار را انجام می دهد ، به صفحه مقصد ارسال می کند . د این روش اطلاعات از دید کاربر و سایرین مخفی خواهد بود و برای انتقل اطلاعات حساس مانند رمز عبور مناسب است .
    فرض کنید که یک فرم به شکل زیر طراحی کرده اید . در این فرم دو کنترل کادر متن داریم که از کاربر نام و سن آن را پرسیده است .
    [TABLE="class: ex"]
    [TR]
    [TD="class: header, colspan: 2"] Example [/TD]
    [/TR]
    [TR]
    [TD="class: body"] <form action="recevie.php" method="post" >
    Name:
    <input type="text" name="fname" />
    Age:
    <input type="text" name="age" />
    <input type="submit" />
    </form> [/TD]
    [TD="class: header"] کد [/TD]
    [/TR]
    [/TABLE]
    هنگامی که کاربر اطلاعات خواسته شده را در فرم وارد نموده و آن را submit می کند ، 2 اتفاق می افتد :

    1. اول اینکه مرورگر به صفحه تعیین شده در خاصیت action یعنی صفحه receive.php ارسال می شود .
    2. دوم اینکه مرورگر نام کنترل های متن و مقادیرشان را به صورت کد شده و مخفیانه به صفحه مقصد ارسال می کند :
      آدرس در نوار آدرس مرورگر به صورت زیر در خواهد آمد . در این مثال فرض کرده ایم که کاربر برای نام مقدار ali و برای سن مقدار 22 را وارد کرده است : [TABLE="class: ex"]
      [TR]
      [TD="class: prname"] Syntax [/TD]
      [TD="class: prdes, align: left"] آموزش برنامه نويسی - طراحی وب سایت - وبلاگ [/TD]
      [/TR]
      [/TABLE]
    چند نکته مهم :
    در روش ارسال post ، اطلاعات درون فرم کد شده و مخفی ارسال می شوند .بنابراین در معرض دید سایرین نبوده و همچنین اطلاعت به راحتی حک نخواهند شد . به همین دلیل باید از این روش در ارسال اطلاعات حساس مثل رمز عبور و ... استفاده کرد .
    دوم اینکه حجم اطلاعاتی که با این روش می توانید ارسال نمایید ، نا محدود است .
    امکان bookmark کردن صفحه در این روش وجود ندارد .
    [HR][/HR] دریافت اطلاعات ارسالی در صفحه مقصد و استفاده از آنها - متغیر POST_$ :
    پس از اینکه کاربر با استفاده از متد post اطلاعات فرم خود را به صفحه مقصد ارسال نمود ، باید آن اطلاعات را در صفحه مقصد دریافت کرده و از آنها استفاده نماید .
    برای این منظور در صفحه مقصد از متغیر از پیش تعیین شده ، POST_$ برای دریافت اطلاعات ارسالی استفاده می شود . می توانید به تعداد متغیر های ارسالی به صفحه از متغیر POST_$ استفاده نمایید . فقط باید همان نامی که در فرم صفحه مبدا برای متغیر تعیین شده ، استفاده نمایید .
    تشریح روش با یک مثال عملی :
    مطالب تشریح شده همراه با کد مورد نیاز آن را در مثال عملی زیر نمایش می دهیم .
    کد لازم برای دریافت مقادیر متغیرهای ارسالی ، که در فرم بالای صفحه ارسال شده است به صورت زیر است . در فرم دو متغیر fname و age داشتیم ، که در کد صفحه مقصد آن ها را به روش زیر دریافت کرده و در خروجی دوباره استفاده نموده ایم :
    [TABLE="class: ex"]
    [TR]
    [TD="class: header, colspan: 2"] Example [/TD]
    [/TR]
    [TR]
    [TD="class: body"] <html>
    <body>
    Hello < ? php echo $_POST [ " fname " ] ; ? > ! < br / >
    You are < ? php echo $_POST [ " age " ] ; ? > years old.
    </body>
    </html>
    [/TD]
    [TD="class: header"] کد [/TD]
    [/TR]
    [/TABLE]

    [HR][/HR]
     
    یک شخص از این تشکر کرد.