نمایش نتایج: از شماره 1 تا 16 , از مجموع 16

موضوع: اموزش گام به گام زبانphp

  1. #1
    کاربرسایت PARS آواتار ها
    تاریخ عضویت
    ۸۷-۰۲-۲۵
    نوشته ها
    666
    سپاس ها
    0
    سپاس شده 0 در 0 پست

    اموزش گام به گام زبانphp

    قبل از هر چيز يه نگاه كوتاه و جزئي بر تاريخچه php ميكنيم. نويسنده php اولين بار اين زبان رو براي كار هاي شخصي خودش و اثريبراي Resume كاريش كه بايد تحويل مي داده نوشته بوده. اولين بار اين زبانبصورت يك CGI در زبان Perl نوشته شده بود. ولي سروري كه روش php نصب شدهبود يكسري مشكل در اجراي صفحات داشت. به همين دليل php رو دوباره بازنويسيكرد و با زبان C نوشت. در همين اثنا بعضي از كاربران سرور مربوطه هم شروعبه كار با نسخه نوشته شده و درخواست به افزودن feature هاي بيشتر كردند.اين روال ادامه پيدا كرد تا اولين نسخه جمع و جور شده php رو همراه باراهنما، Mailing-List و FAQ بيرون داد. اولين نام اين زبان Personal HomePage Tools بوده كه در آينده به Personal Home Page Construction Kitتغيير كرد. در همين مدت كه داشت php پامي گرفت نويسنده اون شروع به نوشتنيه CGI ديگه براي كاركردن با بانك هاي اطلاعاتي و ارسال SQL Query كرد.خوب بقيه تارخچه باشه براي بعد حالا به خود php بپردازيم ;-).


    قبل از هرچيز پيشنهاد مي كنم اديتور يا بهتر بگم IDE پرقدرت Zend رودريافت كنيد. واقعا كارتون رو در كد نويسي راحت ميكنه و همون جا هم ميتونيد اجراش كنيد.

    خوب تا الان نصب php رو گفتيم و گفتيم كه 2 جور php رو ميشه نصب كرد. يكيبصورت CGI و ديگري بصورت يك Module براي سرورتون. مطلبي كه جاش بود ذكركنم يه توضيح كوچكي براي فرق اين دو بود.زماني كه php بصورت يك CGI بررويسرور نصب ميشه، هرگاه كه سرور به فايل هاي php بر مي خوره php رو اجراميكنه و اين فايل رو بهش ارسال ميكنه. ولي وقتي بصورت Module براي سرورنصب ميشه، php جزئي از خود سرور ميشه و زماني كه سرور شروع به كار ميكنههميشه هست و منتظر صفحات و اجراشون هست. طبيعتا معلومه كه نصب بصورتModule بهتر از نصب بصورت CGI هست. چون اگر بصورت CGI نصب بشه با هرRequest بايد php اجرا بشه و بعد هم بسته بشه! البته وقتي php بصورتModule نصب ميشه به اين معني نيست كه از CGI ديگه نشه استفاده كرد. يهموقع ها ميشه كه ما لازم داريم بصورت CGI از php استفاده كنيم. به عنوانمثال مي خواهيم سرور ما هر هفته توسط يكي از اسكريپت هاي نوشته شده ما ازDatabase ما يك Backup بگيره. براي انجام اين منظور ما اسكريپت رو بصورتجداگانه و CGI اجراش مي كنيم. خيلي حاشيه رفتم، حالا بيايم سر اصل مطلب.
    اسكريپت هاي نوشته شده php همگي بايد در فايل هاي متني ساده ويا به عبارتيبهتر بصورت UNIX-Style نوشته شوند. به عنوان مثال يك فايل php هيچ وقتنبايد با Word Pad يا MS-Word ساخته شود! چون موقع اجرا php رو دچار مشكلميكنه. در محيط Windows ساده ترين اديتور براي انجام اينكار Note-Pad هست.اگر از ويندوز 2000 يا XP استفاده مي كنيد كه چه بهتر چون مي تونيد بهراحتي يك فايل php و با كدپيج Unicode ذخيره كنيد. فايل هاي php معمولا ازپسوند php. تشكيل مي شوند. زماني كه browser شما يك درخواست به سرور شماميفرستد براي مشاهده يك فايل php، سرور شما فايل مربوطه رو به php Engineميفرسته تا فايل اجرا بشه. كار php Engine اجراي فايل php شما و ارسالنتيجه بصورت HTML به browser شما هست. php يك زبان اسكريپت نويسي سمت سروراست. يعني اسكريپت شما در سرور اجرا شده و نتيجه براي شما ارسال مي شود.
    دستورات php رو ميشه به طرق مختلف نوشت. در اينجا به چند صورتش اشاره مي كنم.

    بصورت SGML

    < ?
    ...
    ? >



    بصورت XML


    < ? php
    ...
    ? >



    بصورت اسكريپت هاي نوشته شده در فايل هاي HTML


    < script language="php" >
    ...
    < /script >



    بصورت تگ هاي ASP، البته در اين حالت بايد در فايل php.ini تعريف كنيد كهاين حالت رو بشناسه. براي اينكار asp_tags =off رو به on تغيير بديد.يادتون نره Apache ياهر سروري كه داريد رو restart كنيد يا تغييرات رومشاهده كنيد. نحوه نوشتن ASP Style هم اينگونه هست:


    < %
    ...
    % >



    من توي نوشته هام فقط بصورت XML مي نويسم. مابين اين تگ ها هر چند تادستور كه بخواهيم مي تونيم بنويسيم. هر دستوري كه تموم ميشه بايد بعدش اينعلامت رو بزاريم ";" هرگاه Engine زبان php به اين ويرگول نقطه دار رسيدفرض ميكنه كه دستور شما تموم شده. اگر در آخر هر دستور خود اينو نزاريدبرنامتون با مشكل برميخوره. در اينجا يك مثال مي زنم كه نمايانگر پايان يكدستور هست.

    < ? php
    echo ( 14 * 5);
    ? >



    اين عبارت دقيقا مساوي اين عبارت هست:

    < ?php
    echo (
    14
    *
    5
    );
    ? >



    php تا زماني كه به ";" نرسه دستور رو تموم شده فرض نميكنه. هردوي اين عبارات حاصل ضرب 14 در 5 رو برروي صفحه نشون مي دهند.
    گاهي اوقات ميشه كه ما مي خواهيم خطي يا خطوطي رو در فايل php خود غيرفعال كنيم تا اجرا نشن. يا گاهي اوقات هست كه ما مي خواهيم در كد هاي خودمطلبي رو بنويسيم. مثلا مي خواهيم بگيم اين كد فلان كار رو انجام ميده.اين كار رو مي توان به 3 صورت انجام داد. راحت ترين راه براي انجام اينكار گذاشتن 2 تا slash " //" در آغاز هر خط است. به عنوان مثال ما ميخواهيم يه نوشته روي صفحه نمايش بديم و در خود كد هم مي خواهيم توضيح بديمكه اين چيه:

    < ? php
    echo ( 14 * 5); // This will show the result of 14 times 5
    ? >



    اگر // رو در اول خط ميزاشتيم، اين دستور ديگه اجرا نميشد و به اصطلاحIgnore ميشد. به جاي // مي توان از # هم استفاده كرد. ولي گاهي اوقات هستكه شما مي خواهيد چند خط رو غير فعال كنيد. براي انجام اين كار نوشته هاروداخل /* ...*/ قرار مي دهيم. به عنوان مثال هر اسكريپتي كه نوشته ميشه، درآغاز فايل يه توضيح كوتاهي از اسكريپت نوشته شده، مي نويسند.

    < ?php
    /* This script will encrypt your string
    using function md5()*/
    ? >



    به همين روال اگر شما يكسري كد جاي اين نوشته ها قرار بديد، كد هاي شما Igone ميشن و اجرا نميشن.
    خوب حالا بپردازيم به نحوه نمايش عبارات برروي صفحه! نوشته هاي متني وعبارات متني رو ميشه به 3 مدل نوشت و نمايش داد. نحوه اول بصورت doublequote هست. اگر شما نوشته هاي خود رو درون "..." قرار بدهيد، زمان اجرا،php متن شمارو تا تگ هاي HTML و متغير هاي استفاده شما رو پيدا كنه ونتيجه رو برروي صفحه نشون بده. در زبان php نوشته هاي ما توسط دستور echoنمايش داده مي شوند. به اين مثال براي نمايش متن هايي كه درون doublequote هستند دقت كنيد.

    < ?php
    echo ("salam");
    ? >



    در اين مثال چون كلمه salam بين تگ هاي [ b ] هست بصورت bold يا توپورنمايش داده ميشه. بنابراين نتيجه salam مي باشد. در ادمه نوشته مي بينيدكه اگر يك متغير هم نامش دورن "..." قرار داده شده باشده، مقدار يا ارزشاون در صفحه نشون داده ميشه.
    نحوه بعدي نمايش عبارات، بصورت single quote هست. يعني نوشته هاي ما ميان'...' قرار مي گيرند. وقتي نوشته هاي شما ميان '...' قرار بگيرند، ديگهتوسط php مورد بررسي قرار داده نميشه كه آيا متغيري ميانشون هست يا نه:

    < ?php
    echo ('salam');
    ? >



    حاصل اين دستور عبارت salam درست مانند قبلي برروي صفحه است. ولي اگر مامتغيري در اين نوشته قرار بديم، مقدار و ارزشش نشون داده نميشه و فقط اسمشنشون داده ميشه. آخرين روش براي نمايش عبارات استفاده از Here Documentاست كه من تا حالا زياد نديدم جايي استفاده داشته باشه. در اين روش هم اگرشما از دستورات html استفاده كنيد، نوشته هاي شما برروي صفحه به همان صورتنشون داده مي شوند. به عنوان مثال:

    < ?php
    $hereText=<<
    salam

    khoobi?
    chetori?
    end_delimiter;
    echo "
    ";
    echo($hereText);
    ? >



    در متغير hereTex$ ما اين نوشته هارو ذخيره مي كنيم. هنگام نمايش برروي صفحه ما اين نتايج رو ميگيريم:

    salam
    khoobi?chetori?



    كلا زياد از Here Document استفاده نميشه. اعداد رو هم ميشه بصورت عددي كههستند نمايش بديم و هم بصورت مقادير آن ها در سيستم هاي Octal و Hexa. بهعنوان مثال اين عبارات همگي عدد 110 رو نشون مي دهند:

    < ? php
    echo (110);
    echo (0x6e);
    echo (0377);
    ? >



    براي نمايش اعداد Hexadecimal بايد در شروع آن 0x و براي نمايش اعداد Octal بايد درشورع آنها يك صفر قرار دهيم.

    يه زنگ تفريح ;-). براي تبديل اعداد از عدد معمولي به سيستم Hexa از تابع()dechex و براي تبديل از عدد معمولي به سيستم Octal از تابع ()decoctاستفاده مي كنيم. همين روال رو براي تبديل از hexa به decimal و octal بهdecimal ميشه انجام داد با توابع ()hexdec و ()octdec.


    در برنامه نويسي ما هميشه با مقداري به نام بولين (Boolean) سروكار داريم.متغيري كه از نوع بولين تعريف ميشه يا مقدار True ميگيره يا False. ميشهاينو به يه چراغ تشبيه كرد. يه چراغ يا خاموشه يا روشن. وقتي روشنه Trueهست وقتي هم كه خاموش هست False.
    php هم مانند تمامي زبان هاي برنامه نويسي ديگه از انواع مختلف متغير هاپشتيباني مي كنه. در اين زبان متغير ها با علامت $ نامشون شروع ميشه. بهعنوان مثال اگر ما بخواهيم متغيري داشته باشيم كه درونش نامي رو نگهداريكنيم مي تونيم name$ تعر&



    عملگرهاي string:
    اولين چيزي كه بايد بگم اين هست كه دستور echo از ادامه نوشته شما، نوشته اي رو نشون ميده. دقيقا همانند كد هاي HTML. تا شما از
    استفاده نكنيد، خط شما عوض نميشه و به خط بعدي نميره. echo هم كارش نمايشتمامي نوشته هاي شما همراه با تگ هاي html شما هست. مهمترين عملگري كهبراي رشته هاي متني (string ها) به كار ميره، كاراكتر نقطه (.) هست. اينكاراكتر رشته هاي متني رو به هم وصل ميكنه. به اين عملگر Dot Operatorميگن. به عنوان مثال شما مي خواهيد هركس كه وارد سيستم كاربري سايت شماميشه بهش يه خوش آمد گويي همراه نامش گفته بشه. فرض مي كنيم در متغيرUserName$ نام كاربر قرار مي گيره و در مقدار ثابت WELCOME هم عبارت ",Welcome to our site" قرار ميگيره. بنابر اين ما بايد عبارت خوش آمد روبه نام كاربر وصل كنيم. به مثال زير براي انجام اين كار دقت كنيد:

    < ?php
    define("WELCOME","Welcome to our site, ");
    $UserName = "Milad";
    echo WELCOME . $UserName;
    ? >



    وقتي برنامه ما اجرا ميشه عبارت Welcome to our site, Milad برروي صفحهنمايش داده ميشه. بخاطر داشته باشيد كه مقدار هاي ثابت رو اگر در "..."قرار دهيد، php مانند متغير ها به آنها رجوع نميكنه. مثال بالا رو برايمتغير ها هم صدق ميكنه، به اين معنا كه ما چند متغير داشته باشيم و همه روبصورت رشته اي به يكديگر وصل كنيم. به عنوان مثال در برنامه ما اسم مردمدر 3 تا متغير ثبت ميشه، بصورت FirstName$ و MiddleName$ و LastName$.حالا مي مي خواهيم متغيري درست كنيم به نام Compeltename$ و توش هر 3 اينمتغير ها رو به يكديگر وصل كنيم:

    < ?php
    $FirstName = "Milad";
    $MiddleName = "farid";
    $LastName = "Sina";
    /*---------------------*/
    $CompleteName = $FirstName." ".$MiddleName." ".$LastName;
    echo $CompleteName;
    ? >



    در اينجا توسط نقطه، همون عملگر Dot Operator اين 3 متغير رو به يكديگروصل مي كنم. همچنين چون مي خوام بين كلمات فاصله باشه، فاصله هم به اينصورت" " بينشون مي دهم. خروجي برنامه Milad farid Sina خواهد بود. اگر اونفاصله هارو نمي دادم و دستور رو مانند زير مي نوشتم در اين صورت خروجيبرنامه عبارت MiladfaridSina بود.

    $CompleteName = $FirstName . $MiddleName . $LastName;



    حالا جاش هست بعضي از توابعي كه براي كاربا String ها خيلي به كارمون ميادرو بگيم. در اين نوشته به Reqular Expression ها نمي پردازم چون جاش نيست،ولي در آينده بهشون مي رسيم.

    تابع ()substr:

    string substr ( string string, int start [, int length])



    كار اين تابع جداكردن قسمتي از متن ما مي باشد. به اين صورت كه اين تابعرشته متني را مي گيرد و مي تواند قسمتي از متن رو براي ما جدا كنه. اينتابع 3 تا پارامتر ميگيره. پارامتر اول رشته متن اوليه مي باشد، پارامتردوم Position حرفي هست كه مي خواهيم از اون به بعد جدا كنيم و پارامتر سومهم طول رشته متني هست كه مي خواهيم جدا بشه. اگر پارامتر سوم رو مشخصنكنيم اين تابع ادامه متن رو برامون جدا مي كنه. شايد يكم بد توضيح دادهباشم ولي توي مثال خوب جا مي افته:

    نتيجه دستور
    m4s.net (از حرف 4 به بعد در متغير result$ ذخيره مي شود) $result = substr("www.m4s.net",4);

    m4s (از حرف 4 به بعد 3 حرف در متغير result$ دخيره مي شود) $result = substr("www.m4s.net",4,3);


    تابع ()strpos

    int strpos ( string haystack, string needle [, int offset])



    كار اين تابع دقيقا برعكس تابع ()substr مي باشد. يعني شما يك عبارتي رودر متني جستجو مي كنيد و تابع به شما Position اولين حرف رو ميده. اينتابع اولين نتيجه اي كه پيدا ميكنه رو نشون ميده بنابر اين اگر عين همونعبارت رو بازم داشته باشيد نشون نخواهد داد. اين تابع 3 تا پارامترميگيره. پارامتر اول رشته متن اوليه ما مي باشد. پارامتر دوم عبارتي هستكه در رشته متن پيدا ميشه. به خاطر داشته باشيد كه اگر عبارت پيدا نشدتابع مقدار False به ما برميگردونه! و اما پارامتر سوم براي شروع جستجو ميباشد. اگر عددي را مشخص نكنيد از اول رشته متني عبارتي جستجو ميشه و اگرعددي رو مشخص كنيد، از اون Position به بعد جستجو انجام ميشه. به مثال هايزير دقت كنيد

    نتيجه دستور
    عدد 4 در متغير result$ ذخيره مي شود. از حرف 4 به بعد عبارت m4s شروع مي شود $result = strpos("www.m4s.net","m4s");

    عدد 3 در متغير result$ ذخيره مي شود. چون بعد از حرف 4، عبارت ما يافت شده $result = strpos("www.m4s.net",".");

    عدد 7 در متغير result$ ذخيره مي شود. از حرف 5 به بعد شروع ميشه بهجستجوي براي پيدا كردن ".". Position نقطه بعد از حرف 7 مي باشد. $result= strpos("www.m4s.net",".",5);


    تابع ()trim
    كار اين تابع حذف تمامي فواصل آغاز و پايان رشته متني مي باشد. به عنوانمثال اگر ما چنين رشته متني داشته باشيم " Milad "، اين تابع تمامي فاصلههاي آغاز و پايان رشته رو حذف ميكنه. به عنوان مثال:

    < ?php
    $name = " Milad ";
    $name =trim($name);
    ? >



    در اين مثال اول در متغير name$ عبارت " Milad " رو ذخيره كرديم، سپس توسطتابع ()trim تمامي فاصله هاي اضافه حذف كرديم و دوباره در متغير name$ذخيرش كرديم.

    توابع ()char و ()ord
    تابع ()char كد ASCII حرفي را ميگرد و حرف مربوطه رو بر ميگردونه. و تابع()ord هم دقيقا بر عكس همين كار رو انجام ميده. يعني كه حرف رو ميگره و كداسكي اون رو براي ما بر مي گردونه:

    < ?php
    echo ord("©");
    echo chr(169);
    ? >



    عبارت اول كد اسكي © كه همون 169 هست رو نشون ميده، و عبارت دوم هم حرف مربوطه به كد 169 كه همون علامت© رو نشون ميده.

    تابع ()strlen
    كار اين تابع برگردوندن طول يك رشته متني مي باشد. به عنوان مثال اگرعبارت "M4S.Net" رو به اين تابع بدهيم، تابع به ما عدد 7 رو بر مي گردونه.يه مثال ديگه هم نوشتم:

    < ?php
    echo strlen("www.m4s.net");
    ? >



    وقتي اين اسكريپت اجرا ميشه، عدد 11 خروجي برنامه مي باشد.

    چند تا تابع ديگه هم هست كه جا داشت بگم ولي يكم مبحث رو پيچيده مي كرد،به ياري خدا در بخش ديگه اي از سات كه در نظر دارم، بهشون مي پردازم. خوبتا اينجاي كار يكسري از مسايل بسيار پايه اي php رو گفتيم. در نوشته هايآينده بيشتر با اين زبان آشنا خواهيد شد. اگر هرگونه سوال يا مشكلي داشتيددر قسمت گفتگوي سايت در انجمن php مطرح كنيد. لطفا به عنوان پيغام شخصينپرسيد، چون شايد سوال شما، سوال فرد ديگه هم باشه.

    زبان

  2. #2
    کاربرسایت PARS آواتار ها
    تاریخ عضویت
    ۸۷-۰۲-۲۵
    نوشته ها
    666
    سپاس ها
    0
    سپاس شده 0 در 0 پست

    Re: اموزش گام به گام زبانphp

    Php چيست؟
    PHP يک زبان برنامه نويسی با کد باز (Open-Source) است که اگرچه درابتدا صرفا جهت برنامه نويسی تحت وب توليد شد، امروزه کارآييهای فراوانیپيدا کرده است. PHP يک زبان تحت سرور است (Server-Side) که طبيعتا برایاجرا نياز به يک برنامه سرويس دهنده وب (Web Server) دارد.
    کسانيکه مانند خود من قبلا با PERL کار کرده اند و حالا قصد دارند باPHP کار کنند، احتمالا مثل من در ابتدا به مشکلاتی بر خواهند خورد امامطمئن باشيد که PHP را سريع خواهيد آموخت. آنچه به نظر من از خصوصيات خوبPHP بشمار می آيد آن است که با وجود شباهت PHP با PERL، PHP پيچيدگيهایPERL را کمتر دارا می باشد. هرچند که قدرت PERL بر روی متن ها غير قابلانکار است اما فراموش نکنيد که PHP را صرفا برای محيط وب ساخته اند پس بهاندازه کافی ( و حتی بيش از حد کافی ) امکانات کار با stringها را به شماارائه خواهد کرد. فکر می کنم مقدمه چينی بيش از اين هم حوصله شما را سر میبرد و هم من را از موضوع دور می کند پس بر می گرديم به PHP.

  3. #3
    کاربرسایت PARS آواتار ها
    تاریخ عضویت
    ۸۷-۰۲-۲۵
    نوشته ها
    666
    سپاس ها
    0
    سپاس شده 0 در 0 پست

    Re: اموزش گام به گام زبانphp

    برای شروع کار با PHP چه نياز داريم؟
    PHP برای اجرا نياز به يک Web-Server دارد. دم دست ترينWeb-Server برای شما احتمالا IIS خواهد بود، چرا که با استفاده از سی دیWindows قابل نصب است. نمی خواهم در اين مقاله به شرح نصب IIS (يا وبسرورهای ديگر) بپردازم اما اگر نياز به شرح آن داريد لطفا با من تماسبگيريد تا بطور مفصل آن را شرح دهم (آدرس پست الکترونيکی من در انتهای اينمقاله آمده است). برای کسانيکه بقول يکی از دوستان من، "مرام Open Source"گلوی آنها را می فشارد شايد بهتر باشد از Apache به عنوان Web-Serverاستفاده کنند. (البته اگر از حق هم نگذريم Apache خيلی از IISبهتره!!!)

    اگر Web-Server مورد علاقه شما به درستی بر روی دستگاه شما نصب شدهاست، حالا نياز داريد که PHP را بر روی آن نصب کنيد. برای بدست آوردن کدPHP از آدرس [برای مشاهده لینک ها شما باید عضو سایت باشید برای عضویت در سایت بر روی اینجا کلیک بکنید] استفاده کنيد.
    طبيعتا برای مشاهده نتيجه اجرای فايلهای PHP نياز به يک مرورگر وب (WebBrowser) داريد که مسلما رايجترين آن Internet Explorer است. برای درستکردن هر فايل PHP هم نياز به يک ويرايشگر ساده متنی داريد (مثلا Word padيا Note pad ) توجه کنيد که از ويرايشگرهای حرفه ای مانند Microsoft Wordنمی توانيد استفاده کنيد زيرا اين ويرايشگرها از کاراکترهای پنهانیفراوانی استفاده می کنند که در هنگام ذخيره فايل متنی اين کاراکترها همذخيره خواهند شد که باعث عدم اجرای دستورات PHP می شوند. با هم يک کد سادهPHP بنويسيم.

  4. #4
    کاربرسایت PARS آواتار ها
    تاریخ عضویت
    ۸۷-۰۲-۲۵
    نوشته ها
    666
    سپاس ها
    0
    سپاس شده 0 در 0 پست

    Re: اموزش گام به گام زبانphp

    حالا می خواهيم اولين کد PHP را با هم درست کنيم. ويرايشگر متن را باز کنيد (مثلا Word pad) و در آن چنين بنويسيد:

    <?php
    echo (“Hi! I am the first PHP script you have made!”);
    ?>

  5. #5
    کاربرسایت PARS آواتار ها
    تاریخ عضویت
    ۸۷-۰۲-۲۵
    نوشته ها
    666
    سپاس ها
    0
    سپاس شده 0 در 0 پست

    Re: اموزش گام به گام زبانphp

    حالا فايلتان را با عنوان 1st.php و در Web Server Local Folder ذخيرهنماييد (اگر از IIS استفاده می کنيد اين فولدر در درايوی که Windows را درآن نصب کرده ايد، با نام Inetpub وجود دارد. در داخل آن فولدر ديگری بهنام wwwroot وجود دارد که بايد فايلتان را در آن بريزيد.)
    حالا مرورگر وب خود را باز کنيد (مثلا Internet Explorer) و در قسمت آدرسآن ابتدا //:http و سپس نام کامپيوتر خود و يا آدرس IP آن را تايپ نماييد(نام کاميوتر را در Control panel/System/Network Identification و IP رادر صورتيکه تعيين کرده باشيد در قسمت Command Prompt و با اجرای دستورipconfig می توانيد مشاهده کنيد) و پس از يک Backslash (/) نام فايل(1st.php) را تايپ نموده و Enter را بزنيد. بعنوان مثال نام کامپيوترمنamir است. پس بايد در قسمت آدرس مرورگرم خط زير را بنويسم:


    [برای مشاهده لینک ها شما باید عضو سایت باشید برای عضویت در سایت بر روی اینجا کلیک بکنید]
    اگر همه چيز را تا اينجا درست انجام داده باشيد، متن زير در مرورگرتان پديدار می شود:

  6. #6
    کاربرسایت PARS آواتار ها
    تاریخ عضویت
    ۸۷-۰۲-۲۵
    نوشته ها
    666
    سپاس ها
    0
    سپاس شده 0 در 0 پست

    Re: اموزش گام به گام زبانphp

    همانطور که احتمالا متوجه شديد، بايد کد PHP خود را درداخل تگ <?php ?> قرار دهيد. البته می توانيد از روشهای ديگر نيزاستفاده کنيد اما متداولترين روش همين است.

    دستور ()echo در PHP وظيفه چاپ در خروجی را بر عهده دارد.
    می توانستيم همين کد را با کمک تگهای HTML و بصورت زير نيز بنويسيم:
    <html>
    <body>
    <?php
    echo ("Hi! I am the first PHP script you have made!");
    ?>
    </body>
    </html>

  7. #7
    کاربرسایت PARS آواتار ها
    تاریخ عضویت
    ۸۷-۰۲-۲۵
    نوشته ها
    666
    سپاس ها
    0
    سپاس شده 0 در 0 پست

    Re: اموزش گام به گام زبانphp

    آموزش کامل و مرحله به مرحله ی Php
    مقدمه اي بر PHP و مقايسه آن با Perl CGI

    امروزه با توجه به اينکه روز به روز بر تعداد ميزبانهايي که PHP رو ساپورتميکنند افزوده ميشود ، صحبت در مورد PHP و قابليتهاي آن در ميان طراحان وبو برنامه نويسان زياد است.

    براي کساني که فقط نامي از PHP شنيده اند و از تواناييها و مزيت هاي PHPآگاهي ندارند در اين مقاله PHP رو به طور مختصر شرح شرح ميدهم و آن را بااسکريپتهاي CGI مقايسه ميکنم.

    PHP يک زبان طرف خادم (server side ) مي باشد و شما ميتوانيد براي ساختصفحات ديناميک وب از آن استفاده کنيد. براي مثال مديريت و ساماندهياطلاعات دريافتي از يک form اچتمل با PHP بسيار آسان است.


    1- زبان:

    اگر شما با زبانهاي C , C++ , Perl يا Java کار ميکنيد ياد گرفتن زبان PHPميتواند مانند زنگ تفريح باشد! در واقع شما خيلي سريع ميتوانيد اسکريپتنويسي را با PHP شروع کنيد.

    متغيرها در PHP مانند PHP هستند (با پيشوند $ ) و انواع مختلف داده ها راميتوانند در خود ذخيره کنند. براي مثال $whatever ميتواند انواع داده هاشامل رشته اي ، عددي و غيره را در خود نگه دارد.

    اگر مقدار $whatever يک عدد باشد شما ميتوانيد مقدار آن را اينگونه افزايش دهيد:

    $whatever ++;

    يا

    $whatever =+1;

    يا

    $whatever=$whatever+1;

    که دقيقا همان روشي است که در C ، C++ ، Perl يا Java به کار ميبرديد.

    2- تسهيلات توکار (Built-in facilities )

    بر خلاف Perl که يک زبان همه منظوره است و شما ميتوانيد تقريبا هر برنامهاي را با آن بنويسيد ، PHP از ابتدا با هدف اسکريپت نويسي براي صفحات وبدرست شده ، از اينرو اسکريپت نويسي براي صفحات وب در PHP بسيار آسانتر ازPerl مي باشد.

    براي مثال ميخواهيم از يک فرم در يک صفحه وب ايميلي را به آدرس خودمانارسال کنيم. به کمک Perl شما احتمالا کدي شبيه زير را مينويسيد :

    open ( MAIL,"|/usr/sbin/sendmail -t");
    print MAIL "To: " ;
    print MAIL "From: " ;
    print MAIL "Subject: Comments from Web Form\n\n" ;
    print MAIL $mainmessage ;
    close ( MAIL ) ;


    اما همين برنامه در PHP به شکل زير نوشته مي شود :

    mail ( " [email=myself@mydomain.com:2jp91kua]myself@mydomain.com[/email:2jp91kua] ", "Comments from Web Form",
    $mainmessage, "From: [email=visitor@hisdomain.com:2jp91kua]visitor@hisdomain.com[/email:2jp91kua] " );


    خب حتما تفاوت اين دو زبان در سادگي و راحتي را متوجه شده ايد!

    اين سادگي و رواني براي بقيه کارها هم صادق است ، مانند فرستادن يا بازيابي يک پرونده با FTP يا HTTP.

    همانطور که گفته شد اين سادگي از اونجا ناشي ميشه که PHP فقط براي برنامه نويسي براي صفحات وب طراحي شده است.

    تسهيلات ديگر آن در اداره کردن input هاي يک form مي باشد ، براي مثال يک فرم مانند زير را در نظر بگيريد:

    <input
    type=text name="dateofbirth">



    شما خيلي راحت و سريع مي توانيد به محتويات اين فرم در متغير $dateofbirthدسترسي داشته باشيد. نيازي به تجزيه و تحليل input هاي فرم نيست.

    تمام فيلد ها در يک فرم به طور اتوماتيک به متغيرهايي تبديل ميشوند که شما خيلي راحت ميتوانيد به آنها دسترسي داشته باشيد.

    دسترسي به پايگاه داده ها هم به همين شکل اسان و راحت است. کار با پايگاههاي داده مانند MySQL, MSQL, Dbase, Oracle, InterBase, از قابليتهاي ذاتي(Built-in) PHP است . PHP حتي براي رمزنگاري MIME هم تابعي در نظر گرفتهاست. قابليتها و تسهيلات PHP بسيار زياد است و طبيعتا ممکن نيست به همهآنها را در اين مقاله اشاره کرد.

    اشاره به اين چند مورد هم فقط براي اين بود که تصميم شما را براي فراگيري PHP قاطع تر کنم!

    3- ساخت صفحات وب :

    يک صفحه PHP ميتواند شبيه کد زير باشد :



    <html>

    <head><title>My First PHP Script</title></head>

    <body>

    <h1>My First PHP Script</h1>





    Welcome, Internet user from IP address

    <?echo $REMOTE_ADDR?>. Hope you like my first

    PHP page.

    </body>

    </html>


    توجه کنيد که اين دقيقا شبيه source صفحات وب مي باشد مگر در موارد کهدستورات PHP را شامل مي شوند. اين کد آدرس IP بيننده صفحه را مينويسد ،براي همين از دستور echo استفاده کرده ايم . متغير محيطي وب سرور(environment variable) REMOTE_ADDR به صورت اتوماتيک با متغيري به هميننام در PHP شناخته ميشود (مانند ديگر متغيرهاي محيطي وب سرور). از اينرونوشتن چنين اسکريپتهايي بسيار آسان و لذت بخش خواهد بود!

    4- اشکال زدايي PHP در مقايسه با Perl CGI

    اگر شما اسکريپتهاي نوشته شده را به صورت آنلاين آزمايش و اشکال زدايي ميکنيد PHP واقعا در اين زمينه مي درخشد!

    هنگامي که اشکالي در يک اسکريپت Perl پيدا شود شما يک پيغام رمزگونه ونامفهوم (چيزي شبيه "500 Internal Server Error") دريافت ميکنيد.

    اما وقتي که اسکريپت هاي PHP خود را به صورت آنلاين آزمايش ميکنيد ، هنگاممواجه شدن با اشکال پيغام خطا را با اشاره دقيق به شماره خط داراي اشکالميدهد و اين براي اشکال زدايي خيلي کار ما را راحت ميکند ، هر چند پيغامخطا گاهي اوقات کلي و نامفهوم است مانند "parse error".

    ولي در Perl پيغام خطاي "Internal Server Error" مي تواند از هر چيزي ناشيشود ، از اشتباه در syntax گرفته تا جا انداختن يک حرف يا upload کردنفايل در غير text mode .

    اما اشکال زدايي به صورت آفلاين کاملا برعکس مي باشد.

    بيشتر برنامه نويسان اعتقاد دارند که مفسر Perl هنگام مواجه شدن با خطاپيغام بهتر و مفيد تري ميدهد تا مفسر PHP که مثلا براي بسياري از خطاهاپيغام کلي parse error را ميدهد که اين امر هم با توجه به انتشار نسخه هايجديدتر PHP ميتواند برطرف شود.

    موفق باشيد .

  8. #8
    کاربرسایت PARS آواتار ها
    تاریخ عضویت
    ۸۷-۰۲-۲۵
    نوشته ها
    666
    سپاس ها
    0
    سپاس شده 0 در 0 پست

    Re: اموزش گام به گام زبانphp

    Php چيست ؟
    PHP سال 1994 توسط Rasmus Lerdorf ايجاد شد و مخفف واژگان Personal Home Pages به حساب مي آيد. روي بيشتر كليك كن تا ادامه رو ببيني.
    با گسترش قابليت ها و موارد استفاده اين زبان PHP در معناي HypertextPreprocessor به کار گرفته شد. عبارت پيش پردازشگر (Preprocessor) بدينمعني است که PHP اطلاعات را قبل از تبديل به زبان Html پردازش مي کند.
    مطابق مطالب سايت وب رسمي PHP که در آدرس [برای مشاهده لینک ها شما باید عضو سایت باشید برای عضویت در سایت بر روی اینجا کلیک بکنید] قرار دارد، PHP زبان اسکريپتي سمت سرويس دهنده Html Embeded , Cross-Platform ,(Server-side) مي باشد.
    سمت سرويس دهنده بودن PHP بدين معناست که تمام پردازشهاي اين زبان بر رويسرويس دهنده (Server) انجام مي گيرد. يک سرويس دهنده در حقيقت يک کامپيوترمخصوص مي باشد که صفحات وب در آنجا نگهداري مي شوند و از آنجا به مرورگروب کاربران منتقل مي شوند.
    چگونگي ادامه اين روند را در درس های آتی توضيح داده خواهد شد.
    منظور از Cross-Platform بودن اين زبان اين است که بروي هر سيستم و با هرسيستم عاملي از قبيل : Unix, Windows NT, Macintosh, Os/2 اجرا ميشوند.توجه کنيد که منظور از سيستم عامل، سيستم عامل هايي مي باشند که بر رويسرويس دهنده نصب مي شوند. PHP نه تنها قابليت اجرا بر روي هر سيستم عامليرا دارا مي باشد بلکه براي منتقل کردن برنامه هاي آن از يک سيستم عامل بهسيستم عامل ديگر احتياج بــه تغييرات اندکي خواهيد داشت و حتي در بعضي ازموارد بدون احتياج به هيچ تغييري مي توانيد يک برنامه به زبان php را ازيک سيستم عامل به سيستم عامل ديگر منتقل کنيد.
    منظور از Html embeded بودن PHP اين است که دستورات اين زبان در بين کدهايhtml قرار مي گيرند. بنابراين برنامه نويسي به زبان PHP کمي پيچيده تر ازبرنامه نويسي به زبان Html به حساب مي آيد.
    PHP بر خلاف زبانهاي برنامه نويسي (Programming Languages) يک زباناسکريپتي (Scripting Language) مي باشد به عبارت ديگر دستورات PHP بعد ازرخداد يک رويداد (Event) اجرا مي شوند. اين رويدادها مي توانند شامل ارساليک فرم رفتن به يک URL مشخص و يا مواد ديگر باشند متداولترين زباناسکريپتي زبان Java Script مي باشد که معمولا براي پاسخ به رويدادهايکاربر در مرورگر وب بــه کار مي رود تفاوت عمده Java Script با PHP در ايناست که Java Script يک تکنولوژي سمت سرويس گيرنده (Client-side) مي باشد.
    زبان هايي مانند Java Script يا PHP تفسير شونده (Interpreted) ناميده ميشوند. به عبــارت ديگر براي اجرا به يک مفسر مانند مرورگر وب احتياجدارند. اما زبانهاي برنامه نويسي مانند C يا Java بعد از ترجمه به زبانماشين (Compile) به خودي خود قابل اجرا مي باشند.
    جديدترين نسخه PHP نسخه 4 اين زبان اسکريپتي مي باشد و کليه فايل ها وکدهايي که توي اين وبلاگ ارائه ميشه تحت اين نسخه کار ميکنند. اما يک مشکلهست که اکثر سرويس دهنده ها از نسخه 3 استفاده ميکنند. تفاوت اين دو نسخهPHP بسيار اندک هست و تغييرات مهم عموما در مسير اصلاح عملکرد اين زبانصورت گرفته شده است.

  9. #9
    کاربرسایت PARS آواتار ها
    تاریخ عضویت
    ۸۷-۰۲-۲۵
    نوشته ها
    666
    سپاس ها
    0
    سپاس شده 0 در 0 پست

    Re: اموزش گام به گام زبانphp

    جلسه اول آموزش php
    PHP يک زبان برنامه نويسی با کد باز (Open-Source) است که اگرچه در ابتداصرفا جهت برنامه نويسی تحت وب توليد شد، امروزه کارآييهای فراوانی پيداکرده است. PHP يک زبان تحت سرور است (Server-Side) که طبيعتا برای اجرانياز به يک برنامه سرويس دهنده وب (Web Server) دارد.

    کسانيکه مانند خود من قبلا با PERL کار کرده اند و حالا قصد دارند با PHPکار کنند، احتمالا مثل من در ابتدا به مشکلاتی بر خواهند خورد اما مطمئنباشيد که PHP را سريع خواهيد آموخت. آنچه به نظر من از خصوصيات خوب PHPبشمار می آيد آن است که با وجود شباهت PHP با PERL، PHP پيچيدگيهای PERLرا کمتر دارا می باشد. هرچند که قدرت PERL بر روی متن ها غير قابل انکاراست اما فراموش نکنيد که PHP را صرفا برای محيط وب ساخته اند پس به اندازهکافی ( و حتی بيش از حد کافی ) امکانات کار با stringها را به شما ارائهخواهد کرد. فکر می کنم مقدمه چينی بيش از اين هم حوصله شما را سر می برد وهم من را از موضوع دور می کند پس بر می گرديم به PHP.


    برای شروع کار با PHP چه نياز داريم؟
    PHP برای اجرا نياز به يک Web-Server دارد. دم دست ترين Web-Server برایشما احتمالا IIS خواهد بود، چرا که با استفاده از سی دی Windows قابل نصباست. نمی خواهم در اين مقاله به شرح نصب IIS (يا وب سرورهای ديگر) بپردازماما اگر نياز به شرح آن داريد لطفا با من تماس بگيريد تا بطور مفصل آن راشرح دهم (آدرس پست الکترونيکی من در انتهای اين مقاله آمده است). برایکسانيکه بقول يکی از دوستان من، "مرام Open Source" گلوی آنها را می فشاردشايد بهتر باشد از Apache به عنوان Web-Server استفاده کنند. (البته اگراز حق هم نگذريم Apache خيلی از IISبهتره!!!)
    اگر Web-Server مورد علاقه شما به درستی بر روی دستگاه شما نصب شده است،حالا نياز داريد که PHP را بر روی آن نصب کنيد. برای بدست آوردن کد PHP ازآدرس [برای مشاهده لینک ها شما باید عضو سایت باشید برای عضویت در سایت بر روی اینجا کلیک بکنید] استفاده کنيد.
    طبيعتا برای مشاهده نتيجه اجرای فايلهای PHP نياز به يک مرورگر وب (WebBrowser) داريد که مسلما رايجترين آن Internet Explorer است. برای درستکردن هر فايل PHP هم نياز به يک ويرايشگر ساده متنی داريد (مثلا Word padيا Note pad ) توجه کنيد که از ويرايشگرهای حرفه ای مانند Microsoft Wordنمی توانيد استفاده کنيد زيرا اين ويرايشگرها از کاراکترهای پنهانیفراوانی استفاده می کنند که در هنگام ذخيره فايل متنی اين کاراکترها همذخيره خواهند شد که باعث عدم اجرای دستورات PHP می شوند. با هم يک کد سادهPHP بنويسيم.
    حالا می خواهيم اولين کد PHP را با هم درست کنيم. ويرايشگر متن را باز کنيد (مثلا Word pad) و در آن چنين بنويسيد:

    <?php
    echo (“Hi! I am the first PHP script you have made!”);
    ?>

    حالا فايلتان را با عنوان 1st.php و در Web Server Local Folder ذخيرهنماييد (اگر از IIS استفاده می کنيد اين فولدر در درايوی که Windows را درآن نصب کرده ايد، با نام Inetpub وجود دارد. در داخل آن فولدر ديگری بهنام wwwroot وجود دارد که بايد فايلتان را در آن بريزيد.)
    حالا مرورگر وب خود را باز کنيد (مثلا Internet Explorer) و در قسمت آدرسآن ابتدا //:http و سپس نام کامپيوتر خود و يا آدرس IP آن را تايپ نماييد(نام کاميوتر را در Control panel/System/Network Identification و IP رادر صورتيکه تعيين کرده باشيد در قسمت Command Prompt و با اجرای دستورipconfig می توانيد مشاهده کنيد) و پس از يک Backslash (/) نام فايل(1st.php) را تايپ نموده و Enter را بزنيد. بعنوان مثال نام کامپيوتر منsiamak است. پس بايد در قسمت آدرس مرورگرم خط زير را بنويسم:
    [برای مشاهده لینک ها شما باید عضو سایت باشید برای عضویت در سایت بر روی اینجا کلیک بکنید]
    اگر همه چيز را تا اينجا درست انجام داده باشيد، متن زير در مرورگرتان پديدار می شود:
    همانطورکه احتمالا متوجه شديد، بايد کد PHP خود را در داخل تگ <?php ?>قرار دهيد. البته می توانيد از روشهای ديگر نيز استفاده کنيد امامتداولترين روش همين است.

    دستور ()echo در PHP وظيفه چاپ در خروجی را بر عهده دارد.
    می توانستيم همين کد را با کمک تگهای HTML و بصورت زير نيز بنويسيم:
    <html>
    <body>
    <?php
    echo ("Hi! I am the first PHP script you have made!");
    ?>
    </body>
    </html>
    در هر صورت خروجی برنامه به همان صورت که گفتيم خواهد بود. خوب برای جلسه اول کافيست.

  10. #10
    کاربرسایت PARS آواتار ها
    تاریخ عضویت
    ۸۷-۰۲-۲۵
    نوشته ها
    666
    سپاس ها
    0
    سپاس شده 0 در 0 پست

    Re: اموزش گام به گام زبانphp

    آموزش Php – جلسه دوم
    توضیحات برنامه نویس در حین برنامه نویسی (Comments )

    مانند تمام زبانهای برنامه نویسی دیگر، می توانید توضیحات خود را برایآسان کردن رجوع های بعدی در PHP داشته باشید. به این منظور می توانید از// یا # برای بازداشتن PHP از انجام پردازش بر روی متن روبروی آن استفادهکنید. اگر می خواهید بیش از یک خط را زیر پوشش Comment خود قرار دهید، آنرا در بین علامتهای /* */ قرار دهید.


    <?php
    // This line will not be parsed in PHP
    # This line will not be parsed in PHP like the line above
    /* Line number1: These 3 lines will not either!
    Line number2
    Line number3: End of comment */
    ?>

    عملگرهای ریاضی در PHP

    عملگرهای ریاضی در PHP طبق جدول زیر می باشند.

    مثال
    نام
    عملگر

    $a + $b
    جمع
    +

    $a - $b
    تفریق
    -

    $a * $b
    ضرب
    *

    $a / $b
    تقسیم
    /

    $a % $b
    باقیمانده
    %




    توجه: همانند زبانهایی مانند C در اینجا هم می توانیم از عملگرهای پیشوندی مانند $a+=$b یا $a++ استفاده نماییم.

    عملگرهای رشته ای در PHP

    یک عملگر رشته ای مهم در PHP وجود دارد و آن نقطه (.) می باشد. این عملگر باعث به هم چسبیدن دو رشته مجزا می گردد.

    توجه: از عبارت .= می توانید استفاده نمایید.

    متغیرها در PHP

    در زبان PHP باید قبل از هر متغیر یک علامت $ قرار دهید. در واقع PHP از روی علامت $ تشخیص می دهد که متغیرهای برنامه شما کدامند.

    اگر تاکنون با زبانهای برنامه نویسی مانند C، C++، Pascal و مانند اینهاکار می کرده اید، احتمالا انتظار دارید انواع مختلف متغیرها اعم ازInteger، Real، Float و غیره را برایتان معرفی کنم. اما احتمالا خوشحالخواهید شد که بدانید نوع متغیرها برای PHP اهمیت ندارد. کافیست متغیری رانامگذاری کنید و سپس هر مقدار، از هر نوع و به هر اندازه که می خواهید درآن قرار دهید. سوالی که پیش خواهد آمد احتمالا "نحوه عمل PHP با اینمتغیرهای همه منظوره" است.

    قبل از اینکه به مثال برسیم باید توجه شما را به دو نکته جلب کنم:

    1- متغیرها در PHP نسبت به کوچکی و بزرگی حساسیت دارند (Case Sensitive ).یعنی به عنوان مثال متغیرهای my_var و My_Var و MY_VAR از نظر زبان PHP باهم متفاوت هستند.

    2- متغیرها می توانند نامهایی با حروف کوچک و بزرگ انگلیسی و همینطورUnderscore (خط فاصله پایین) را اخذ نمایند. استفاده از اعداد به شرطیکهاولین حرف متغیر نباشند نیز مجاز است. (یعنی مثلا $s12 و $S_1 به عنواننام متغیر مجاز است اما $1s2 مجاز نمی باشد.) به شما به عنوان یک برنامهنویس که به تازگی شروع به کار با PHP نموده است پیشنهاد می کنم که ازاستفاده از Underscoreها نیز در ابتدای نام متغیرهای خود اجتناب ورزید.بعدها خواهیم دید که بسیاری از متغیرهایی که PHP خود از آنها استفاده میکند دارای Underscore در ابتدایشان می باشد.

    حالا به مثال زیر توجه کنید:

    <?php
    $a=4;
    $b=23;
    $c="20hi! ";
    $d="world 26";
    $D=650.25; //It is different from $d
    echo($D);//650.25
    echo("
    ");
    echo($d);//world 26
    echo("
    ");
    echo($a+$b); //27
    echo("
    ");
    echo($b+$c);//43
    echo("
    ");
    echo($c+$d);//20
    echo("
    ");
    echo($c.$d);//20hi! world 26
    echo("
    ");
    echo($a.$c.$d);//420hi! world 26
    echo("
    ");
    $c.=$d;
    echo($c);//20hi! world 26
    echo("
    ");
    echo($d);//world 26
    ?>
    خروجی برنامه بصورت زیر خواهد بود:





    همانطور که از مثال بالا هم متوجه می شوید، در صورتیکه عددی را بصورت عادیو بدون علامت نقل قول (" ") به یک متغیر نسبت می دهیم، PHP می تواند با آنهم بصورت عدد و هم بصورت رشته برخورد نماید. در صورتیکه یک مقدار را درداخل " " قرار دهیم، اگر در ابتدای آن یک عدد وجود داشته باشد، PHP میتواند در مقابل عملگرهای ریاضی با آن عددها همچون اعداد عادی برخورد نمایدو در مقابل عملگرهای رشته ای به عنوان رشته.

    در این دو جلسه با هم آموختیم که چگونه یک کد ساده PHP را بسازیم و چگونهبا متغیرها در PHP برخورد نماییم. در جلسه های آینده موارد بیشتری ازچگونگی برنامه نویسی با PHP به شما خواهم آموخت.

  11. #11
    کاربرسایت PARS آواتار ها
    تاریخ عضویت
    ۸۷-۰۲-۲۵
    نوشته ها
    666
    سپاس ها
    0
    سپاس شده 0 در 0 پست

    Re: اموزش گام به گام زبانphp

    آموزش زبان برنامه نویسی php
    سلام .امروز آموزش php آغاز می کنیم در طی آموزش از مثال های متعددیاستفاده می کنیم که به یادگیری سریعتر شما کمک کنیم. من از نوشتن توضیحاتاضافه وابتدایی پرهیز می کنم.

    در این درس خواهیم خواند :
    - نحوه ساخت ، بارگذاری و اجرای یک فایل PHP
    - چگونه از PHP و HTML در یک صفحه استفاده کنیم
    - چگونه کدها را با استفاده از کامنتهای برنامه نویسی قابل فهم تر کنیم

    خوب برای شروع یک TextEditor رو باز کنید. php هم مانند html مبتنی بر متنساده است بنابراین از هر ادیتوری میشود برای ساخت فایل php استفاده کرد.مثلا Notepad خود را باز کنید.
    خطوط زیر را وارد کنید و فایل را به هر اسمی با پسوند .php ذخیره کنید. مثلا first.php

    PHP کد:
    <?
    print "Hello Web!";
    ?>
    در صورتیکه php روی کامپیوتر خود نصب کرده اید ، فایل رو در وب سرور خودکپی کنید و آن را از طریق browser صدا کنید. و یا اینکه فایل رو در یکسایت با دسترسی PHP بارگذاری نمایید و آدرس آن را در browser تایپ کنید.
    پس از اجرای فایل جمله Hello Web! رو بر روی صفحه خواهید دید.
    در صورتیکه کدها خود را یعنی هما چیزی که در ادیتور تایپ کردید رو رویصفحه دیدید. این بدان معنی است که وب سرور شما فایل php رو اجرا نکرده (یاphp بر روی آن نصب نیست و یا پسوند فایل رو به درستی انتخاب نکرده اید.)

    خوب حالا که صفحه اول php خود را upload کرده اید کمی در آن دقت کنید.
    در شروع و در اولین خط کد
    PHP کد:
    <?




    رو داريم. هميشه شروع يك كد php باید با همین تگ ها باشد. در غیر اینصورتسیستم با کدها مثل html رفتار میکند و بدون هیچگونه عملیاتی همان متن کدرا نمایش خواهد داد.
    و در انتهای کد PHP نیز حتما باید

    PHP کد:
    ?>
    را وارد کنید که به server می فهماند که کد php اینجا تمام شده است و از این به بعد با کدهای html روبرو است.
    در انتهای هر خط از کدها باید از


    PHP کد:
    ;

    استفاده شود. در غیر اینصورت سرور کدها را در یک خط و پشت سر هم تشخیص می دهد. پس شما می توانستید کد بالا را در یک خط و به صورت



    PHP کد:
    <? Print "Hello Word!" ; ?>


    نیز بنویسید.

    دستور Print

    این دستور در واقع نمایش دهنده است و هر چیزی که به آن بدهید را بر روی صفحه نمایش می دهد.
    شما می توانید مقدار یک متغیر را نیز با استفاده از Print نمایش دهید.

    ترکیب PHP و HTML در یک صفحه

    کدهای زیر را در notepad وارد نمایید و ذخیره و upload کنید.

    HTML کد:
    1: <html>
    HTML کد:
    2: <head>3: <title>Listing 3.2 A PHP script including HTML</title>4: </head>5: <body>6: 7: <?8: print "hello world";9: ?>10: 11: </body>12: </html>

    خوب همانطور که می بینید کدهای HTML به راحتی می توانند در کنار کدهای PHP کار کنند. در واقع سرور قبل از رسیدن به کد



    PHP کد:
    <?

    همه کدها رو html فرض کرده و کدهای در داخل

    و

    را به عنوان کد php می شناسد و بر روی آنها عملیات انجام می دهد.

    گذاشتن Comment در میان کدها

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


    PHP کد:
    //


    و یا


    PHP کد:
    #

    استفاده کنید.
    مثلا



    PHP کد:
    // This is a comment
    یا




    PHP کد:
    # in yek comment ast

  12. #12
    کاربرسایت PARS آواتار ها
    تاریخ عضویت
    ۸۷-۰۲-۲۵
    نوشته ها
    666
    سپاس ها
    0
    سپاس شده 0 در 0 پست

    Re: اموزش گام به گام زبانphp

    آموزش گام به گام زبان php
    قبل از هر چيز يه نگاه كوتاه و جزئي بر تاريخچه php مي كنيم. نويسنده phpاولين بار اين زبان رو براي كار هاي شخصي خودش و اثري براي Resume كاريشكه بايد تحويل مي داده نوشته بوده. اولين بار اين زبان بصورت يك CGI درزبان Perl نوشته شده بود. ولي سروري كه روش php نصب شده بود يكسري مشكل دراجراي صفحات داشت. به همين دليل php رو دوباره بازنويسي كرد و با زبان Cنوشت. در همين اثنا بعضي از كاربران سرور مربوطه هم شروع به كار با نسخهنوشته شده و درخواست به افزودن feature هاي بيشتر كردند. اين روال ادامهپيدا كرد تا اولين نسخه جمع و جور شده php رو همراه با راهنما،Mailing-List و FAQ بيرون داد. اولين نام اين زبان Personal Home PageTools بوده كه در آينده به Personal Home Page Construction Kit تغييركرد. در همين مدت كه داشت php پامي گرفت نويسنده اون شروع به نوشتن يه CGIديگه براي كاركردن با بانك هاي اطلاعاتي و ارسال SQL Query كرد. خوب بقيهتارخچه باشه براي بعد حالا به خود php بپردازيم ;-).


    قبل از هرچيز پيشنهاد مي كنم اديتور يا بهتر بگم IDE پرقدرت Zend رودريافت كنيد. واقعا كارتون رو در كد نويسي راحت ميكنه و همون جا هم ميتونيد اجراش كنيد.

    خوب تا الان نصب php رو گفتيم و گفتيم كه 2 جور php رو ميشه نصب كرد. يكيبصورت CGI و ديگري بصورت يك Module براي سرورتون. مطلبي كه جاش بود ذكركنم يه توضيح كوچكي براي فرق اين دو بود.زماني كه php بصورت يك CGI بررويسرور نصب ميشه، هرگاه كه سرور به فايل هاي php بر مي خوره php رو اجراميكنه و اين فايل رو بهش ارسال ميكنه. ولي وقتي بصورت Module براي سرورنصب ميشه، php جزئي از خود سرور ميشه و زماني كه سرور شروع به كار ميكنههميشه هست و منتظر صفحات و اجراشون هست. طبيعتا معلومه كه نصب بصورتModule بهتر از نصب بصورت CGI هست. چون اگر بصورت CGI نصب بشه با هرRequest بايد php اجرا بشه و بعد هم بسته بشه! البته وقتي php بصورتModule نصب ميشه به اين معني نيست كه از CGI ديگه نشه استفاده كرد. يهموقع ها ميشه كه ما لازم داريم بصورت CGI از php استفاده كنيم. به عنوانمثال مي خواهيم سرور ما هر هفته توسط يكي از اسكريپت هاي نوشته شده ما ازDatabase ما يك Backup بگيره. براي انجام اين منظور ما اسكريپت رو بصورتجداگانه و CGI اجراش مي كنيم. خيلي حاشيه رفتم، حالا بيايم سر اصل مطلب...

  13. #13
    کاربرسایت PARS آواتار ها
    تاریخ عضویت
    ۸۷-۰۲-۲۵
    نوشته ها
    666
    سپاس ها
    0
    سپاس شده 0 در 0 پست

    Re: اموزش گام به گام زبانphp

    اسكريپت هاي نوشته شده php همگي بايد در فايل هاي متني ساده ويا به عبارتيبهتر بصورت UNIX-Style نوشته شوند. به عنوان مثال يك فايل php هيچ وقتنبايد با Word Pad يا MS-Word ساخته شود! چون موقع اجرا php رو دچار مشكلميكنه. در محيط Windows ساده ترين اديتور براي انجام اينكار Note-Pad هست.اگر از ويندوز 2000 يا XP استفاده مي كنيد كه چه بهتر چون مي تونيد بهراحتي يك فايل php و با كدپيج Unicode ذخيره كنيد. فايل هاي php معمولا ازپسوند php. تشكيل مي شوند. زماني كه browser شما يك درخواست به سرور شماميفرستد براي مشاهده يك فايل php، سرور شما فايل مربوطه رو به php Engineميفرسته تا فايل اجرا بشه. كار php Engine اجراي فايل php شما و ارسالنتيجه بصورت HTML به browser شما هست. php يك زبان اسكريپت نويسي سمت سروراست. يعني اسكريپت شما در سرور اجرا شده و نتيجه براي شما ارسال مي شود.
    دستورات php رو ميشه به طرق مختلف نوشت. در اينجا به چند صورتش اشاره مي كنم.

    بصورت SGML


    < ?
    ...
    ? >




    بصورت XML



    < ? php
    ...
    ? >




    بصورت اسكريپت هاي نوشته شده در فايل هاي HTML



    < script language="php" >
    ...
    < /script >




    بصورت تگ هاي ASP، البته در اين حالت بايد در فايل php.ini تعريف كنيد كهاين حالت رو بشناسه. براي اينكار asp_tags =off رو به on تغيير بديد.يادتون نره Apache ياهر سروري كه داريد رو restart كنيد يا تغييرات رومشاهده كنيد. نحوه نوشتن ASP Style هم اينگونه هست:



    < %
    ...
    % >

  14. #14
    کاربرسایت PARS آواتار ها
    تاریخ عضویت
    ۸۷-۰۲-۲۵
    نوشته ها
    666
    سپاس ها
    0
    سپاس شده 0 در 0 پست

    Re: اموزش گام به گام زبانphp

    من توي نوشته هام فقط بصورت XML مي نويسم. مابين اين تگ ها هر چند تادستور كه بخواهيم مي تونيم بنويسيم. هر دستوري كه تموم ميشه بايد بعدش اينعلامت رو بزاريم ";" هرگاه Engine زبان php به اين ويرگول نقطه دار رسيدفرض ميكنه كه دستور شما تموم شده. اگر در آخر هر دستور خود اينو نزاريدبرنامتون با مشكل برميخوره. در اينجا يك مثال مي زنم كه نمايانگر پايان يكدستور هست.


    < ? php
    echo ( 14 * 5);
    ? >




    اين عبارت دقيقا مساوي اين عبارت هست:


    < ?php
    echo (
    14
    *
    5
    );
    ? >




    php تا زماني كه به ";" نرسه دستور رو تموم شده فرض نميكنه. هردوي اين عبارات حاصل ضرب 14 در 5 رو برروي صفحه نشون مي دهند.
    گاهي اوقات ميشه كه ما مي خواهيم خطي يا خطوطي رو در فايل php خود غيرفعال كنيم تا اجرا نشن. يا گاهي اوقات هست كه ما مي خواهيم در كد هاي خودمطلبي رو بنويسيم. مثلا مي خواهيم بگيم اين كد فلان كار رو انجام ميده.اين كار رو مي توان به 3 صورت انجام داد. راحت ترين راه براي انجام اينكار گذاشتن 2 تا slash " //" در آغاز هر خط است. به عنوان مثال ما ميخواهيم يه نوشته روي صفحه نمايش بديم و در خود كد هم مي خواهيم توضيح بديمكه اين چيه:


    < ? php
    echo ( 14 * 5); // This will show the result of 14 times 5
    ? >




    اگر // رو در اول خط ميزاشتيم، اين دستور ديگه اجرا نميشد و به اصطلاحIgnore ميشد. به جاي // مي توان از # هم استفاده كرد. ولي گاهي اوقات هستكه شما مي خواهيد چند خط رو غير فعال كنيد. براي انجام اين كار نوشته هاروداخل /* ...*/ قرار مي دهيم. به عنوان مثال هر اسكريپتي كه نوشته ميشه، درآغاز فايل يه توضيح كوتاهي از اسكريپت نوشته شده، مي نويسند.


    < ?php
    /* This script will encrypt your string
    using function md5()*/
    ? >




    به همين روال اگر شما يكسري كد جاي اين نوشته ها قرار بديد، كد هاي شما Igone ميشن و اجرا نميشن.
    خوب حالا بپردازيم به نحوه نمايش عبارات برروي صفحه! نوشته هاي متني وعبارات متني رو ميشه به 3 مدل نوشت و نمايش داد. نحوه اول بصورت doublequote هست. اگر شما نوشته هاي خود رو درون "..." قرار بدهيد، زمان اجرا،php متن شمارو تا تگ هاي HTML و متغير هاي استفاده شما رو پيدا كنه ونتيجه رو برروي صفحه نشون بده. در زبان php نوشته هاي ما توسط دستور echoنمايش داده مي شوند. به اين مثال براي نمايش متن هايي كه درون doublequote هستند دقت كنيد.


    < ?php
    echo ("salam");
    ? >




    در اين مثال چون كلمه salam بين تگ هاي [ b ] هست بصورت bold يا توپورنمايش داده ميشه. بنابراين نتيجه salam مي باشد. در ادمه نوشته مي بينيدكه اگر يك متغير هم نامش دورن "..." قرار داده شده باشده، مقدار يا ارزشاون در صفحه نشون داده ميشه.
    نحوه بعدي نمايش عبارات، بصورت single quote هست. يعني نوشته هاي ما ميان'...' قرار مي گيرند. وقتي نوشته هاي شما ميان '...' قرار بگيرند، ديگهتوسط php مورد بررسي قرار داده نميشه كه آيا متغيري ميانشون هست يا نه:


    < ?php
    echo ('salam');
    ? >

  15. #15
    کاربرسایت PARS آواتار ها
    تاریخ عضویت
    ۸۷-۰۲-۲۵
    نوشته ها
    666
    سپاس ها
    0
    سپاس شده 0 در 0 پست

    Re: اموزش گام به گام زبانphp

    در متغير hereTex$ ما اين نوشته هارو ذخيره مي كنيم. هنگام نمايش برروي صفحه ما اين نتايج رو ميگيريم:


    salam
    khoobi?chetori?




    كلا زياد از Here Document استفاده نميشه. اعداد رو هم ميشه بصورت عددي كههستند نمايش بديم و هم بصورت مقادير آن ها در سيستم هاي Octal و Hexa. بهعنوان مثال اين عبارات همگي عدد 110 رو نشون مي دهند.

  16. #16
    کاربرسایت PARS آواتار ها
    تاریخ عضویت
    ۸۷-۰۲-۲۵
    نوشته ها
    666
    سپاس ها
    0
    سپاس شده 0 در 0 پست

    Re: اموزش گام به گام زبانphp

    براي نمايش اعداد Hexadecimal بايد در شروع آن 0x و براي نمايش اعداد Octal بايد درشورع آنها يك صفر قرار دهيم.

    يه زنگ تفريح ;-). براي تبديل اعداد از عدد معمولي به سيستم Hexa از تابع()dechex و براي تبديل از عدد معمولي به سيستم Octal از تابع ()decoctاستفاده مي كنيم. همين روال رو براي تبديل از hexa به decimal و octal بهdecimal ميشه انجام داد با توابع ()hexdec و ()octdec.


    در برنامه نويسي ما هميشه با مقداري به نام بولين (Boolean) سروكار داريم.متغيري كه از نوع بولين تعريف ميشه يا مقدار True ميگيره يا False. ميشهاينو به يه چراغ تشبيه كرد. يه چراغ يا خاموشه يا روشن. وقتي روشنه Trueهست وقتي هم كه خاموش هست False.
    php هم مانند تمامي زبان هاي برنامه نويسي ديگه از انواع مختلف متغير هاپشتيباني مي كنه. در اين زبان متغير ها با علامت $ نامشون شروع ميشه. بهعنوان مثال اگر ما بخواهيم متغيري داشته باشيم كه درونش نامي رو نگهداريكنيم مي تونيم name$ تعر&



    عملگرهاي string:
    اولين چيزي كه بايد بگم اين هست كه دستور echo از ادامه نوشته شما، نوشته اي رو نشون ميده. دقيقا همانند كد هاي HTML. تا شما از
    استفاده نكنيد، خط شما عوض نميشه و به خط بعدي نميره. echo هم كارش نمايشتمامي نوشته هاي شما همراه با تگ هاي html شما هست. مهمترين عملگري كهبراي رشته هاي متني (string ها) به كار ميره، كاراكتر نقطه (.) هست. اينكاراكتر رشته هاي متني رو به هم وصل ميكنه. به اين عملگر Dot Operatorميگن. به عنوان مثال شما مي خواهيد هركس كه وارد سيستم كاربري سايت شماميشه بهش يه خوش آمد گويي همراه نامش گفته بشه. فرض مي كنيم در متغيرUserName$ نام كاربر قرار مي گيره و در مقدار ثابت WELCOME هم عبارت ",Welcome to our site" قرار ميگيره. بنابر اين ما بايد عبارت خوش آمد روبه نام كاربر وصل كنيم. به مثال زير براي انجام اين كار دقت كنيد:


    < ?php
    define("WELCOME","We lcome to our site, ");
    $UserName = "Milad";
    echo WELCOME . $UserName;
    ? >




    وقتي برنامه ما اجرا ميشه عبارت Welcome to our site, Milad برروي صفحهنمايش داده ميشه. بخاطر داشته باشيد كه مقدار هاي ثابت رو اگر در "..."قرار دهيد، php مانند متغير ها به آنها رجوع نميكنه. مثال بالا رو برايمتغير ها هم صدق ميكنه، به اين معنا كه ما چند متغير داشته باشيم و همه روبصورت رشته اي به يكديگر وصل كنيم. به عنوان مثال در برنامه ما اسم مردمدر 3 تا متغير ثبت ميشه، بصورت FirstName$ و MiddleName$ و LastName$.حالا مي مي خواهيم متغيري درست كنيم به نام Compeltename$ و توش هر 3 اينمتغير ها رو به يكديگر وصل كنيم:


    < ?php
    $FirstName = "Milad";
    $MiddleName = "farid";
    $LastName = "Sina";
    /*---------------------*/
    $CompleteName = $FirstName." ".$MiddleName." ".$LastName;
    echo $CompleteName;
    ? >




    در اينجا توسط نقطه، همون عملگر Dot Operator اين 3 متغير رو به يكديگروصل مي كنم. همچنين چون مي خوام بين كلمات فاصله باشه، فاصله هم به اينصورت" " بينشون مي دهم. خروجي برنامه Milad farid Sina خواهد بود. اگر اونفاصله هارو نمي دادم و دستور رو مانند زير مي نوشتم در اين صورت خروجيبرنامه عبارت MiladfaridSina بود.


    $CompleteName = $FirstName . $MiddleName . $LastName;




    حالا جاش هست بعضي از توابعي كه براي كاربا String ها خيلي به كارمون ميادرو بگيم. در اين نوشته به Reqular Expression ها نمي پردازم چون جاش نيست،ولي در آينده بهشون مي رسيم.

    تابع ()substr:


    string substr ( string string, int start [, int length])




    كار اين تابع جداكردن قسمتي از متن ما مي باشد. به اين صورت كه اين تابعرشته متني را مي گيرد و مي تواند قسمتي از متن رو براي ما جدا كنه. اينتابع 3 تا پارامتر ميگيره. پارامتر اول رشته متن اوليه مي باشد، پارامتردوم Position حرفي هست كه مي خواهيم از اون به بعد جدا كنيم و پارامتر سومهم طول رشته متني هست كه مي خواهيم جدا بشه. اگر پارامتر سوم رو مشخصنكنيم اين تابع ادامه متن رو برامون جدا مي كنه. شايد يكم بد توضيح دادهباشم ولي توي مثال خوب جا مي افته:

    نتيجه دستور
    m4s.net (از حرف 4 به بعد در متغير result$ ذخيره مي شود) $result = substr("www.m4s.net" ,4);

    m4s (از حرف 4 به بعد 3 حرف در متغير result$ دخيره مي شود) $result = substr("www.m4s.net" ,4,3);


    تابع ()strpos


    int strpos ( string haystack, string needle [, int offset])




    كار اين تابع دقيقا برعكس تابع ()substr مي باشد. يعني شما يك عبارتي رودر متني جستجو مي كنيد و تابع به شما Position اولين حرف رو ميده. اينتابع اولين نتيجه اي كه پيدا ميكنه رو نشون ميده بنابر اين اگر عين همونعبارت رو بازم داشته باشيد نشون نخواهد داد. اين تابع 3 تا پارامترميگيره. پارامتر اول رشته متن اوليه ما مي باشد. پارامتر دوم عبارتي هستكه در رشته متن پيدا ميشه. به خاطر داشته باشيد كه اگر عبارت پيدا نشدتابع مقدار False به ما برميگردونه ! و اما پارامتر سوم براي شروع جستجومي باشد. اگر عددي را مشخص نكنيد از اول رشته متني عبارتي جستجو ميشه واگر عددي رو مشخص كنيد، از اون Position به بعد جستجو انجام ميشه. به مثالهاي زير دقت كنيد

    نتيجه دستور
    عدد 4 در متغير result$ ذخيره مي شود. از حرف 4 به بعد عبارت m4s شروع مي شود $result = strpos("www.m4s.net" ,"m4s");

    عدد 3 در متغير result$ ذخيره مي شود. چون بعد از حرف 4، عبارت ما يافت شده $result = strpos("www.m4s.net" ,".");

    عدد 7 در متغير result$ ذخيره مي شود. از حرف 5 به بعد شروع ميشه بهجستجوي براي پيدا كردن ".". Position نقطه بعد از حرف 7 مي باشد. $result= strpos("www.m4s.net" ,".",5);


    تابع ()trim
    كار اين تابع حذف تمامي فواصل آغاز و پايان رشته متني مي باشد. به عنوانمثال اگر ما چنين رشته متني داشته باشيم " Milad "، اين تابع تمامي فاصلههاي آغاز و پايان رشته رو حذف ميكنه. به عنوان مثال:


    < ?php
    $name = " Milad ";
    $name =trim($name);
    ? >




    در اين مثال اول در متغير name$ عبارت " Milad " رو ذخيره كرديم، سپس توسطتابع ()trim تمامي فاصله هاي اضافه حذف كرديم و دوباره در متغير name$ذخيرش كرديم.

    توابع ()char و ()ord
    تابع ()char كد ASCII حرفي را ميگرد و حرف مربوطه رو بر ميگردونه. و تابع()ord هم دقيقا بر عكس همين كار رو انجام ميده. يعني كه حرف رو ميگره و كداسكي اون رو براي ما بر مي گردونه:


    < ?php
    echo ord("©");
    echo chr(169);
    ? >




    عبارت اول كد اسكي © كه همون 169 هست رو نشون ميده، و عبارت دوم هم حرف مربوطه به كد 169 كه همون علامت© رو نشون ميده.

    تابع ()strlen
    كار اين تابع برگردوندن طول يك رشته متني مي باشد. به عنوان مثال اگرعبارت "M4S.Net" رو به اين تابع بدهيم، تابع به ما عدد 7 رو بر مي گردونه.يه مثال ديگه هم نوشتم:


    < ?php
    echo strlen("www.m4s.net" );
    ? >




    وقتي اين اسكريپت اجرا ميشه، عدد 11 خروجي برنامه مي باشد.

    چند تا تابع ديگه هم هست كه جا داشت بگم ولي يكم مبحث رو پيچيده مي كرد،به ياري خدا در بخش ديگه اي از سات كه در نظر دارم، بهشون مي پردازم. خوبتا اينجاي كار يكسري از مسايل بسيار پايه اي php رو گفتيم. در نوشته هايآينده بيشتر با اين زبان آشنا خواهيد شد. اگر هرگونه سوال يا مشكلي داشتيددر قسمت گفتگوي سايت در انجمن php مطرح كنيد.

اطلاعات موضوع

کاربرانی که در حال مشاهده این موضوع هستند

در حال حاضر 1 کاربر در حال مشاهده این موضوع است. (0 کاربران و 1 مهمان ها)

موضوعات مشابه

  1. پاسخ ها: 0
    آخرين نوشته: جمعه ۱۰ مهر ۸۸, ۱۱:۵۹
  2. سوابق كشاورز گزينه پيشنهادي وزارت آموزش و پرورش دولت دهم
    توسط hamid192 در انجمن بایگانی اخبار سیاسی
    پاسخ ها: 0
    آخرين نوشته: پنجشنبه ۱۲ شهریور ۸۸, ۰۱:۵۱
  3. ميانگين وزارت وزاري دادگستري
    توسط MR HAMID در انجمن مباحث حقوقی و قضائی
    پاسخ ها: 0
    آخرين نوشته: چهارشنبه ۲۲ اسفند ۸۶, ۰۰:۳۶
  4. پاسخ ها: 0
    آخرين نوشته: جمعه ۳۰ آذر ۸۶, ۱۳:۲۸
  5. تاپیک آموزش گیتار - مقالات آموزشی
    توسط Unknown در انجمن هنر موسیقی
    پاسخ ها: 18
    آخرين نوشته: سه شنبه ۲۲ آبان ۸۶, ۱۲:۱۹

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •