اموزش پی اچ پی - learning php

پی اچ پی php و بانک اطلاعاتی mysql :

اتصال PHP به سِروِر MySQL
با استفاده از تابع PHP mysqli_connect() یک کانکشن (connection) جدید به سِروِر MySQL باز کنید.
باز کردن یک کانکشن جدید به سِروِر MySQL
قبل از این که بتوانیم به داده های داخل بانک اطلاعاتی دسترسی پیدا کنیم، باید یک کانکشن به سِروِر MySQL باز کنیم.
در PHP، این کار با تابع mysqli_connect() انجام می پذیرد.
Syntax
mysqli_connect(host,username,password,dbname);
پارامتر                      توضیح
host    . نام هاست یا آدرس IP
username    نام کاربری MySQL
password    رمز عبور برای ورود
dbname    بانک های اطلاعاتی پیش فرض برای استفاده در هنگام اجرای جستجوها (query)
نکته: پارامترهای بیشتری وجود دارد، اما پارامترهای بالا از همه مهم تر اند.
در مثال زیر، ما کانکشن را در یک متغیر ($con) برای استفاده ی آتی در اسکریپت ذخیره می کنیم:
1

بستن یک کانکشن
هنگامی که یک اسکریپت به پایان می رسد، کانکشن خود به خود بسته می شود. برای زودتر بستن کانکشن از تابع mysqli_close() استفاده می شود:
2

ایجاد بانک های اطلاعاتی و جدول ها در PHP
ایجاد یک بانک اطلاعاتی
از عبارت CREATE DATABASE برای ایجاد یک بانک اطلاعاتی در MySQL استفاده می شود.
ما باید عبارت CREATE DATABASE را برای اجرای دستور به تابع mysqli_query() اضافه کنیم.
مثال زیر، یک بانک اطلاعاتی با نام “my_db” ایجاد می کند.
3

ایجاد یک جدول
از عبارت CREATE TABLE برای ایجاد یک بانک اطلاعاتی در MySQL استفاده می شود.
ما باید عبارت CREATE TABLE را برای اجرای دستور به تابع mysqli_query() اضافه کنیم.
مثال زیر جدولی به نام “Persons” با سه ستون “FirstName”، “LastName” و “Age” ایجاد می کند:

4
نکته: هنگامی که یک فیلد از نوع CHAR ایجاد می کنید، باید حداکثر طول فیلد را مشخص کنید ( به عنوان مثال: CHAR(50)).
نوع داده ها یا data type نوع داده هایی را که ستون می تواند نگه دارد، مشخص می کند.
کلیدهای اولیه و فیلدهای Auto Increment
هر جدول در یک بانک اطلاعاتی باید یک فیلد کلید اولیه داشته باشد.
از یک کلید اصلی بطور خاص برای شناسایی سطرها در یک جدول استفاده می شود. مقدار هر کلید اصلی باید در جدول منحصر به فرد باشد. گذشته از این ها، فیلد کلید اولیه نمی تواند null باشد. چون موتور بانک اطلاعاتی برای مکان یابی رکورد (record)، به یک مقدار نیاز دارد.
مثال زیر، فیلد PID را بصورت یک فیلد کلید اصلی تنظیم می کند. فیلد کلید اصلی معمولاً یک شماره ی ID است و اغلب با تنظیمات AUTO_INCREMENT استفاده می شود. AUTO_INCREMENT بطور خودکار مقدار فیلد را هر بار که یک رکورد اضافه می شود، یکی زیاد می کند. برای این که مطمئن شویم فیلد کلید اولیه نمی تواند null باشد، باید تنظیمات NOT NULL را به فیلد اضافه کنیم:

5

وارد کردن داده ها در یک جدول بانک اطلاعاتی
از عبارت INSERT INTO برای اضافه کردن رکوردهای جدید به یک جدول استفاده می شود.
Syntax
عبارت INSERT INTO را می توان به دو فُرم نوشت.
فُرم اول نام های ستون را مشخص نمی کند و فقط مقادیر آن ها را مشخص می سازد:
6

فُرم دوم هم نام و هم مقادیر ستون ها را مشخص می سازد:

7

برای این که PHP عبارات بالا را اجرا کند، باید از تابع mysqli_query() استفاده کنیم. از این تابع برای ارسال کوئری (query) و یا دستورات به کانکشن MySQL استفاده می شود.
مثال:
در بخش قبل، یک جدول با نام  “Persons” و با سه ستون “FirstName”، “LastName” و “Age” ایجاد کردیم. از همین جدول در مثال زیر نیز استفاده می کنیم. مثال زیر، دو رکورد جدید را به جدول “Persons” اضافه می کند:

8

وارد کردن داده ها از یک فُرم به یک بانک اطلاعاتی
اکنون، یک فُرم HTML برای اضافه کردن رکوردهای جدید به جدول “Persons” ایجاد می کنیم.
فُرم HTML:

9

در مثال بالا، هنگامی که یک کاربر روی دکمه ی submit در فُرم HTML کلیک می کند، فُرم داده ها به “insert.php” ارسال می شود.
فایل “insert.php” به بانک اطلاعاتی وصل می شود و مقادیر را از فُرم های PHP با متغیرهای $_POST بازیابی می کند.
سپس، تابع mysqli_query() عبارت INSERT INTO را اجرا می کند و رکورد جدید به جدول “Persons” اضافه می شود.
این صفحه ی “insert.php” است:
10

انتخاب داده ها در PHP MySQL
از عبارت SELECT برای انتخاب داده ها از یک بانک اطلاعاتی استفاده می شود.
11انتخاب داده ها از یک جدول بانک اطلاعاتی

برای این که PHP عبارت بالا را اجرا کند، باید از تابع mysqli_query() استفاده شود. از این تابع برای ارسال کوئری ها (query) و یا دستورات به کانکشن MySQL استفاده می شود.
مثال
مثال زیر، همه ی داده های ذخیره شده در جدول “Persons” را انتخاب می کند ( کاراکتر * تمامی داده ها را در جدول انتخاب می کند):
12

مثال بالا، تمامی داده های بازگردانی شده توسط تابع mysqli_query() در متغیر $result را ذخیره می کند.
در قدم بعدی، از تابع mysqli_fetch_array() برای بازگردانی سطر اول از رکوردسِت ( recordset) به عنوان یک آرایه استفاده می کنیم. هر فراخوانی به mysqli_fetch_array() سطر بعدی را در رکوردسِت باز می گرداند. حلقه ی while، در تمامی رکوردهای رکوردسِت حلقه می زند. برای چاپ کردن مقدار هر سطر، از متغیر $row در PHP استفاده می کنیم ($row[‘FirstName’] و $row[‘LastName’]).
خروجی کُد بالا بصورت زیر خواهد بود:

13

نمایش نتایج در جدول HTML
مثال زیر، همان داده های مثال بالا را انتخاب می کند، ولی داده ها را در یک جدول HTML نشان می دهد:
14

خروجی کُد بالا بصورت زیر خواهد بود:

15

شرط WHERE
از شرط WHERE فقط برای استخراج رکوردهایی استفاده می شود که کاری خاص را انجام می دهند.
Syntax
16

برای این که PHP عبارت بالا را اجرا کند، باید از تابع mysqli_query() function استفاده شود. از این تابع برای ارسال کوئری ها (query) و یا دستورات به کانکشن MySQL استفاده می شود.
مثال:
مثال زیر، تمامی ستون های جدول “Persons”  را که در آن ها “FirstName=’Peter'” است، انتخاب می کند:
17

خروجی کُد بالا بصورت زیر خواهد بود:

18به روز کردن داده ها در بانک اطلاعاتی
از عبارت UPDATE برای به روز کردن رکوردهای موجود در یک جدول استفاده می شود.
Syntax
19

نکته: به شرط WHERE در سینتَکس UPDATE توجه کنید. شرط UPDATE مشخص می کند که کدام رکورد یا رکوردها باید به روز شوند. اگر شرط WHERE حذف شود، تمامی رکوردها به روز می شوند.
مثال:
در ابتدای این آموزش، جدولی به نام “Persons” ایجاد کردیم. این جدول بصورت زیر نمایان می شود:
20

مثال زیر، چند داده را در جدول “Persons” به روز می کند:

21

پس از به روز کردن، جدول “Persons” به این صورت در می آید:

22

نویسنده : امیر عمادی

دیدگاه بسته است