آموزش برنامه نویسی پی اچ پی PHP

آموزش برنامه نویسی پی اچ پی PHP به زبان شیرین فارسی

آموزش برنامه نویسی پی اچ پی PHP

آموزش برنامه نویسی پی اچ پی PHP به زبان شیرین فارسی

آموزش برنامه نویسی پی اچ پی PHP
بسم الله الرحمن الرحیم
در این سایت آموزش جامع و کاملی درباره زبان برنامه نویسی پی اچ پی PHP قرار داده خواهد شد
امیدوارم این آموزش ها بتونه راه گشای تمام ایرانیانی باشه که می خوان تو این زمینه به موفقیت برسند و باعث افتخار کشورشون باشن
آخرین نظرات
مراحل آموزش کامل PHP را به صورت کامل و به ترتیب زیر پیگیری کنید تا موفق شوید.

A - آموزش مقدماتی PHP

  1. مقدمه پی اچ پی PHP
  2. ساختار دستورات در PHP
  3. متغیر ها در زبان PHP
  4. دستور echo و print در PHP
  5. انواع داده ها در PHP
  6. رشته ها در PHP
  7. مقادیر ثابت در PHP
  8. عملگرها در PHP
  9. جملات شرطی در PHP
  10. دستور Switch در زبان PHP
  11. آرایه ها در زبان PHP
  12. حلقه ها در زبان PHP
  13. بررسی حلقه های for و foreach در PHP
  14. توابع در زبان PHP
  15. فرم های HTML در PHP
  16. متغییر GET_$ در PHP
  17. متغییر POST_$ در زبان PHP

B - آموزش کار با فرم ها

  1. شروع کار با فرم ها در PHP
  2. اعتبارسنجی فرم ها در PHP
  3. فیلد های الزامی در PHP
  4. اعتبارسنجی ایمیل در PHP
  5. حفظ مقادیر فرم در PHP

C- آموزش پیشرفته ی PHP

  1. تابع Date در PHP
  2. دستور include در زبان PHP
  3. کار با فایل ها در PHP
  4. ارسال یا آپلود فایل در PHP
  5. Cookie ها در php
  6. متغییر session در php
  7. ارسال ایمیل در PHP
  8. امنیت در کد ارسال ایمیل php
  9. مدیریت خطاها در php
  10. بررسی استثناها در php
  11. فیلتر ورودی ها در php

ِD - آموزش پایگاه داده

  1. آموزش مقدمه MySQL
  2. ارتباط با داده ها
  3. ....در حال تکمیل آموزش....

در PHP نسخه 5 به بالا، برای کار با پایگاه داده MySQL می توانید یکی از روش های زیر را استفاده نمایید:

  • افزونه MySQLi (کاراکتر i مخفف improved بمعنی بهبود یافته است)
  • PDO که سرنام واژگان PHP Data Objects است

در نسخه های قبلی PHP از افزونه MySQL استفاده می شده، اما استفاده از این افزونه، از 2012 دیگر توصیه نمی شود.


باید از MySQLi استفاده کنم یا PDO ؟

اگر بخواهیم خیلی خلاصه جواب دهیم، این انتخاب بستگی به نیاز شما دارد ...!

هر کدام از گزینه های MySQLi و PDO، مزییت های خودشان را دارند.

گزینه PDO با 12 پایگاه داده مختلف کار می کند، اما MySQLi تنها با پایگاه داده MySQL کار خواهد کرد.

بنابراین اگر بخواهید زمانی به یک پایگاه داده دیگر سوییچ کنید، گزینه PDO کار را آسان تر خواهد کرد و فقط کافی است که ارتباط یا connection به پایگاه داده را تغییر دهید و احتمالاً چند تغییر کوچک در کوئری ها را خواهید داشت.

هر دو گزینه شیء گرا هستند، اما MySQLi رویه های API را نیز ارائه می دهد.

هر دو گزینه، دستورات آماده برای مقابله با تزریقات SQL یا SQL injection را پشتیبانی می کنند، که البته این موضوع، برای حفظ امنیت برنامه های کاربردی وب بسیار حیاتی است.


برای خواندن ادمه آموزش به ادامه مطلب بروید.

۱ نظر موافقین ۰ مخالفین ۰ ۱۳ تیر ۹۴ ، ۲۰:۱۹
سید محمد میرعالی

با استفاده از PHP به پایگاه داده متصل می شوید و داده ها را دستکاری می کنید.

MySQL، یکی از معروف ترین سیستم های پایگاه داده است که همراه با PHP استفاده می شود.


MySQL چیست؟

  • پایگاه داده MySQL، روی وب استفاده می شود.
  • پایگاه داده MySQL، روی سرور اجرا می شود.
  • پایگاه داده MySQL ، خیلی سریع، قابل اطمیتان و استفاده از آن آسان است.
  • پایگاه داده MySQL، از استاندرد SQL  استفاده می کند.
  • قابلیت حمل بر روی سیستم عامل های مختلف از قبیل Linux و windows و غیره را دارد.
  • استفاده و دانلود MySql رایگان است.
  • پایگاه داده MySQL، توسط شرکت Oracle توسعه و پشتیبانی می شود.
  • بیادبود دختر بنیانگذار MySQL یعنی Monty Widenius در ابتدای نام آن از کلمه My استفاده شده است.

برای خواندن ادامه آموزش به ادامه مطلب بروید.

۰ نظر موافقین ۰ مخالفین ۰ ۱۰ تیر ۹۴ ، ۱۶:۱۱
سید محمد میرعالی

تقریباً همه ی برنامه های تحت وب از محیط بیرون دریافت اطلاعات دارند که معمولاً این ورودی ها می تواند از طریق کاربران یا برنامه های دیگر مثل وب سرویس ها باشد، برای اطمینان از صحت اطلاعات ورودی، فیلترهای PHP کمک فراوانی به ما خواهند کرد.

شما باید همیشه داده های ورودی را از فیلترها عبور دهید، در حقیقت فیلتر ورودی ها یکی از مهمترین مسائل امنیت برنامه هاست.

ورودی های برنامه کدامند؟

  • داده های دریافت شده از یک فرم HTML
  • Cookieها
  • داده های دریافت شده از وب سرویس ها
  • متغیرهایی که روی سرور ایجاد می شوند مثل sessionها
  • اطلاعاتی که از پایگاه داده بازیابی می شود

برای خواند ادامه ی آموزش به ادامه مطلب بروید.

۰ نظر موافقین ۰ مخالفین ۰ ۱۴ خرداد ۹۴ ، ۱۹:۱۰
سید محمد میرعالی

همراه با php 5 یک روش جدید شیء گرا برای کار با خطاها ارائه شده است.

استثنا یا Exception چیست؟

اگر در حین اجرای عادی اسکریبت، یک خطای خاص رخ دهد، بررسی کننده استثنا، راه اندازی شده و ادامه اجرای اسکریبت را تغییر می دهد، این خطا را می توان با دستورات شرطی، مشخص کرد، این شرط در حقیقت همان استثنای ماست.

برای استفاده از استثناها می توان مستقیماً از کلاس Exception استفاده کرد و آنرا به صورت زیر راه اندازی یا پرتاب (throw) کرد:

<?php
if($error)
  {
     throw new Exception("خطایی رخ داده است\n");
  }
?>

برای خواندن ادامه ی آموزش به ادامه مطلب بروید.

۰ نظر موافقین ۰ مخالفین ۰ ۱۳ خرداد ۹۴ ، ۱۹:۳۴
سید محمد میرعالی

رسیدگی یا مدیریت خطاها در php

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

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

در زیر بعضی روش های معمول بررسی خطا در php توضیح داده خواهد شد:

  • استفاده از دستور ساده ()die
  • خطاهای معمولی و راه اندازی رسیدگی کننده خطا
  • واقعه نگاری خطاها

استفاده از تابع ()die

این تابع متنی را که به عنوان پارامتر برای آن مشخص کرده ایم، چاپ می کند و از کد جاری خارج می شود.

برای خواند ادامه ی آموزش به ادامه مطلب بروید.

۱ نظر موافقین ۰ مخالفین ۰ ۱۲ خرداد ۹۴ ، ۱۱:۲۴
سید محمد میرعالی

یک ضعف در اسکریپت e-mail فصل قبل وجود دارد. ابتدا، به کد آن نگاهی می اندازیم:

<html>
<body>

<?php
//اگر تکست باکس ایمیل پرشده باشد،ایمیل ارسال می شود
if (isset($_REQUEST['email']))
  {
  //ارسال ایمیل
  $email = $_REQUEST['email'] ;
  $subject = $_REQUEST['subject'] ;
  $message = $_REQUEST['message'] ;
  mail("someone@example.com", "Subject: $subject",
  $message, "From: $email" );
  echo "Thank you for using our mail form";
  }
else
//اگر تکست باکس ایمیل پرنشده باشد، فرم ارسال، نمایش داده می شود
  {
  echo "<form method='post' action='mailform.php'>
  Email: <input name='email' type='text' /><br />
  Subject: <input name='subject' type='text' /><br />
  Message:<br />
  <textarea name='message' rows='15' cols='40'>
  </textarea><br />
  <input type='submit' />
  </form>";
  }
?>

</body>
</html>

مشکل کد بالا این است که کاربران غیرمجاز می توانند از طریق فرم ورودی، درون header نامه، داده درج کنند.

برای خواندن ادامه ی آموزش به ادامه مطلب بروید

۰ نظر موافقین ۰ مخالفین ۰ ۱۲ خرداد ۹۴ ، ۱۱:۱۷
سید محمد میرعالی

در PHP با استفاده از تابع ()mail می توان از داخل یک اسکریبت ایمیل ارسال کرد.

نحوه استفاده:

mail(to,subject,message,headers,parameters)


پارامتر توضیحات
to

الزامی است، دریافت کننده یا دریافت کنندگان ایمیل را مشخص می کند.

subject

الزامی است، موضوع ایمیل را مشخص می کند. توجه داشته باشید که این پارامتر Enter را قبول نمی کند(n\)

message

الزامی است، متن ایمیل را مشخص می کند.

headers

اختیاری است، headerهای دلخواه مانند From,CC,BCC و غیره را مشخص می کند، هر کدام از این Headerها باید با کاراکتر "n\" یا "r\" از یکدیگر جدا شوند

parameters

اختیاری است، یک پارامتر اضافی برای برنامه ارسال ایمیل مشخص می کند.

برای خواندن ادامه ی آموزش به ادامه مطلب بروید

۰ نظر موافقین ۰ مخالفین ۰ ۱۲ خرداد ۹۴ ، ۱۱:۱۵
سید محمد میرعالی

متغیرهای جلسه (session) در php

وقتی یک Application تحت ویندوز را باز می کنید و چند تغییر روی آن می دهید و سپس آنرا می بندید، کامپیوتر می داند شما چه کسی هستید، چه موقع درخواست را آغاز و چه موقع آن را به اتمام رسانده اید. اما در اینترنت یک مشکل وجود دارد، سرور وب نمی داند شما که هستید و چه می کنید چون آدرس HTTP، حالت State را پشتیبانی نمی کند.

یک جلسه یا session این مشکل را برای شما حل می کند، در حقیقت اطلاعات کاربر(مثل: نام کاربری و غیره) بر روی سرور برای استفاده های بعدی ذخیره می شود. اما اطلاعات جلسه موقتی اند و پس از اینکه کاربر، وب سایت را رها کند، اطلاعات حذف خواهند شد، اگر نیاز به ذخیره سازی دائمی دارید باید داده ها را در یک پایگاه داده ذخیره کنید.

برای خواندن ادامه ی آموزش به ادامه مطلب بروید.

۴ نظر موافقین ۰ مخالفین ۰ ۱۱ خرداد ۹۴ ، ۲۰:۵۵
سید محمد میرعالی

Cookie چیست؟ cookie یک فایل کوچک است که سرور آن را درون کامپیوتر کاربر قرار می دهد. هر بار که همان کامپیوتر یک صفحه را از طریق مرورگرش درخواست می کند، مقدار cookie همراه با درخواست به سرور ارسال می شود. با php، شما می توانید هم مقادیر cookie را بسازید و هم بازیابی کنید.

توجه: یک cookie اغلب برای شناسایی یک کاربر استفاده می شود.


 چگونه یک cookie ایجاد کنیم؟

 تابع ()setcookie برای ایجاد cookie استفاده می شود.

نکته: تابع ()setcookie باید قبل از تگ <html> قرار گیرد.

نحوه استفاده:

setcookie(name, value, expire, path, domain);

برای خواندن ادامه ی آموزش به ادامه مطلب بروید.

۱ نظر موافقین ۰ مخالفین ۰ ۱۰ خرداد ۹۴ ، ۱۲:۰۹
سید محمد میرعالی

برای ارسال فایل از Client به Server مراحل زیر را طی کنید:

1- ایجاد یک فرم HTML ارسال فایل

به فرم HTML زیر برای ارسال فایل توجه کنید:

<html>
<body>

<form action="upload_file.php" method="post" enctype="multipart/form-data">
  <label for="file">Filename:</label>
  <input type="file" name="file" id="file" />
  <br />
  <input type="submit" name="submit" value="Submit" />
</form>

</body>
</html>

  • خاصیت enctype در تگ <form>: هنگامی که یک فرم، داده های دودویی، مثل محتوای یک فایل را برای ارسال شدن نیاز دارد، این خاصیت با مقدار "multipart/form-data" پر می شود، در حقیقت مشخص می کند که چه نوع محتوایی هنگام ارائه ی فرم استفاده می شود.
  • خاصیت action در تگ <form>: اگر submit اتفاق افتاد، اطلاعات فرم HTML به صفحه ای که در این خصوصیت  مشخص شده ارسال می شود.(به صورت پیش فرض صفحه جاری در نظر گرفته می شود)
  • خاصیت type در تگ <input>: با مقدار "file" پر شده است و مشخص می کند که ورودی کاربر، باید به عنوان یک فایل پردازش شود.(یک تکس باکس به همراه دکمه Browse، جهت جستجوی فایل از کامپیوتر کاربر)

برای خواندن ادامه ی آموزش به ادامه مطلب بروید.

۰ نظر موافقین ۰ مخالفین ۰ ۰۹ خرداد ۹۴ ، ۲۰:۲۹
سید محمد میرعالی