با استفاده از PHP اصول مدیریت MySQL را درک کنید.
پایگاه داده MySQL عنصر اساسی بسیاری از وب سایت ها است. در حالی که می توانید به راحتی این پایگاه داده ها را از باطن وب سایت خود ایجاد و ویرایش کنید، داشتن مهارت های انجام این کار با کد وب سایت بسیار قدرتمند است. اما شما چهطور این را انجام میدهید؟
PHP یک زبان برنامه نویسی قدرتمند سمت سرور است که هر عملیات پایگاه داده MySQL را که نیاز دارید انجام می دهد. بیاموزید که چگونه از آن برای ساخت، ویرایش و مدیریت یک پایگاه داده از راحتی وب سایت خود استفاده کنید.
برای کار با پایگاه داده MySQL با PHP به چه چیزی نیاز دارید؟
قبل از اینکه بتوانید نوشتن اسکریپت PHP خود را شروع کنید، به محیطی برای اجرای آن نیاز دارید. EasyPHP یک وب سرور محلی، دسترسی به phpMyAdmin و ابزارهای مدیریت دایرکتوری را فراهم می کند – همه چیزهایی که برای شروع آزمایش کد PHP خود نیاز دارید.
شما همچنین می توانید یک وب سایت PHP زنده برای این پروژه ایجاد کنید، البته تا زمانی که phpMyAdmin نصب شده باشد.
به وب سایت EasyPHP بروید و نصب کننده Devserver را دانلود کنید. پس از دانلود، فایل اجرایی را اجرا کرده و مراحل نصب را دنبال کنید. شما می توانید EasyPHP را در این مرحله راه اندازی کنید، اما یک یا دو دقیقه به آن فرصت دهید تا نصب تمام شود.
نماد EasyPHP را در سینی نوار وظیفه خود خواهید دید. روی آن کلیک راست کنید، نشانگر را روی سرورها نگه دارید و Start/Restart All Servers را انتخاب کنید تا مطمئن شوید که وب سرور و پایگاه داده محلی شما هر دو در حال اجرا هستند. دوباره روی نماد نوار وظیفه کلیک راست کرده و Open Dashboard را انتخاب کنید.
فهرست پروژه خود را به EasyPHP اضافه کنید
پس از اتمام نصب EasyPHP، وقت آن است که یک فایل در رایانه خود برای فایل های PHP خود ایجاد کنید. شما می توانید این فایل را به هر دایرکتوری که انتخاب می کنید اضافه کنید، هرچند باید به خاطر داشته باشید که کجاست تا آن را به EasyPHP اضافه کنید.
به بخش Directories بروید و روی Add Directory کلیک کنید. این شما را به یک صفحه جدید می برد که در آن می توانید یک نام پوشه کاری (این می تواند هر چیزی باشد) و یک مسیر را به فهرست کاری اضافه کنید. مسیر، محل فایل در رایانه شما است. در مورد ما، این فقط C:\EasyPHP-MUO است.
اکنون می توانید فایل های PHP را در پوشه کاری دستگاه خود ایجاد کرده و از طریق داشبورد EasyPHP در بخش Working Directories به آنها دسترسی داشته باشید.
ایجاد یک پایگاه داده با MySQL Connect
همانطور که مطرح می شود، هنوز پایگاه داده ای برای کار با آن ندارید. افزودن یک پایگاه داده جدید با PHP آسان است، اما قبل از شروع باید به وب سرور محلی متصل شوید. با اضافه کردن چند متغیر برای نام سرور، نام کاربری سرور و رمز عبور سرور شروع کنید.
$servername = "localhost";
$username = "root";
$password = "";
متغیر نام سرور برای آدرس IP سرور است، اما می توانید از لوکال هاست با EasyPHP یا هر پایگاه داده محلی MySQL دیگری استفاده کنید. نام کاربری پیش فرض برای EasyPHP root است و هیچ رمز عبوری تنظیم نشده است. استقرارهای زنده همیشه باید رمز عبور داشته باشند. پس از این، زمان استفاده از PHP برای ارتباط با پایگاه داده با استفاده از این متغیرها فرا رسیده است.
$conn = new mysqli($servername, $username, $password);
if ($conn->connect_error) {
die("Connection error: " . $conn->connect_error);
}
یک نمونه mysqli ایجاد کنید و نام سرور، نام کاربری و رمز عبور را به آن ارسال کنید. این به اسکریپت شما توانایی اتصال به پایگاه داده وب سرور شما را می دهد. مطمئن شوید که آیا خطاهای اتصال وجود دارد یا خیر.
اکنون زمان اجرای پرس و جوی SQL است. این کار بسیار شبیه به اجرای پرس و جوها با استفاده از ابزاری مانند phpMyAdmin است، اما شما از PHP برای ارسال پرس و جو استفاده می کنید. برای ایجاد پایگاه داده با یک پرس و جو CREATE DATABASE شروع کنید.
$sql = "CREATE DATABASE MUOdatabase";
if ($conn->query($sql) === TRUE) {
echo "Database created.";
} else {
echo "Database creation error: " . $conn->error;
}
$conn->close();
خط اول کد خود پرس و جو است. پرس و جو CREATE DATABASE فقط به نامی مانند “MUOdatabase” نیاز دارد. نتیجه پرس و جو خود را بررسی کنید و مطمئن شوید که پایگاه داده ایجاد شده است. خط نهایی کد اتصال پایگاه داده را می بندد تا پایگاه داده MySQL شما ایمن بماند.
این کد را به یک فایل اسکریپت PHP در دایرکتوری کاری که قبلا ایجاد کردهاید اضافه کنید و سپس فایل را از داشبورد EasyPHP اجرا کنید تا کدی که نوشتهاید اجرا شود. یک صفحه سفید با پیام موفقیت یا خطا مشاهده خواهید کرد.
در صورت مشاهده پیام موفقیت آمیز، از طریق داشبورد EasyPHP به phpMyAdmin بروید و بررسی کنید که آیا پایگاه داده ایجاد شده است یا خیر.
یک جدول پایگاه داده MySQL با PHP ایجاد کنید
پایگاه داده شما هنوز برای ذخیره داده ها آماده نیست. برای قرار دادن داده ها به یک جدول نیاز دارید. مانند ایجاد یک پایگاه داده جدید، برای انجام این کار باید به سرور خود متصل شوید، اما همچنین باید نام پایگاه داده خود را به عنوان یک متغیر درج کنید. بدون این، پرس و جوهای SQL شما به جایی نخواهند رسید.
$servername = "localhost";
$username = "root";
$password = "";
$databasename = "MUOdatabase";
$conn = new mysqli($servername, $username, $password, $databasename);
if ($conn->connect_error) {
die("Connection error: " . $conn->connect_error);
}
پرس و جو CREATE TABLE SQL پیچیده تر از بسیاری از موارد دیگر است. جدول شما نیاز به یک نام دارد (ما جدول خود را MUOtable نامیدیم)، و باید ستون هایی را که خواهد داشت مشخص کنید.
ستون اول یک مقدار عدد صحیح افزایش دهنده خودکار است که به هر رکورد یک IQ منحصر به فرد می دهد که از 1 شروع می شود و با هر رکورد جدید شمارش می شود. در کنار این، سه ستون varchar نیز وجود دارد که میتوانند رشتههایی از اعداد و حروف (حیوان، رنگ و کشور) را بپذیرند و یک ستون مهر زمان برای ثبت آخرین زمان بهروزرسانی هر رکورد.
$sql = "CREATE TABLE MUOtable (
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
animal VARCHAR(30) NOT NULL,
color VARCHAR(30) NOT NULL,
country VARCHAR(50),
reg_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
)";
if ($conn->query($sql) === TRUE) {
echo "Table created.";
} else {
echo "Table creation error: " . $conn->error;
}
$conn->close();
همانطور که هنگام ایجاد پایگاه داده خود انجام دادید، بررسی کنید که آیا پرس و جو موفق بوده یا ناموفق. همچنین باید پس از انجام عملیاتی مانند این اتصال را ببندید.
این کد را به فایل اسکریپت PHP در Working Directory خود اضافه کنید، آن را ذخیره کنید و از طریق داشبورد EasyPHP راه اندازی کنید تا پرس و جو را اجرا کنید. پس از انجام این کار، باید جدول جدید اضافه شده به پایگاه داده شما در phpMyAdmin را مشاهده کنید.
از اینجا، شما فقط باید کد را در نظرات بخش Query SQL برای هر یک از پرس و جوهایی که اجرا می کنید، ویرایش کنید.
با PHP داده ها را به جدول MySQL اضافه کنید
در نهایت، وقت آن است که مقداری داده به جدول پایگاه داده خود اضافه کنید!
$sql = "INSERT INTO MUOtable (animal, color, country)
VALUES ('Elephant', 'Grey', 'England')";
if ($conn->query($sql) === TRUE) {
echo "Record created.";
} else {
echo "Record creation error: " . $conn->error;
}
پرس و جو INSERT INTO ساده است. فقط به نام جدول، ستون هایی که می خواهید داده ها را به آنها اضافه کنید و خود داده نیاز دارد. این مثال Elephant را به ستون حیوانات، خاکستری به ستون رنگ و انگلستان را به ستون Country اضافه می کند.
هنگامی که اسکریپت را چند بار با داده های مختلف اجرا کردید، جدول شما شروع به شکل گیری می کند.
ویرایش و حذف داده ها در داخل جدول MySQL با PHP
همانطور که از داده های داخل جدول خود می بینید، یک اشتباه وجود دارد. فیل ها در انگلستان زندگی نمی کنند، بنابراین جدول نیاز به به روز رسانی با داده های صحیح دارد. کوئری UPDATE بهترین راه برای انجام این کار است.
$sql = "UPDATE MUOtable SET country='Botswana' WHERE id=4";
if ($conn->query($sql) === TRUE) {
echo "Record updated.";
} else {
echo "Record update error: " . $conn->error;
}
این کوئری به نام جدول، ستون و داده های جدید آن و شناسه رکوردی که می خواهید تغییر دهید نیاز دارد.
کوئری SQL DELETE بسیار شبیه است. این یک رکورد جدول را بر اساس شناسه ای که به آن می دهید حذف می کند، به عنوان مثال:
$sql = "DELETE FROM MUOtable WHERE id=4";
Data Inside a MySQL Table With PHP را انتخاب کنید
کوئری SELECT به شما امکان می دهد داده ها را از جدول خود بیرون بکشید و از آن در کد خود استفاده کنید. باید بداند به کدام جدول میخواهید دسترسی داشته باشید، و سپس میتوانید از حلقه while برای نمایش دادهها به صورت HTML استفاده کنید.
$sql = "SELECT id, animal, color, country FROM MUOtable";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
echo "id: " . $row["id"]. " - Animal: " . $row["animal"]. " - Color: " . $row["color"]. " - Location: " . $row["country"]. "
";
}
} else {
echo "No results.";
}
کار با پایگاه داده MySQL و PHP
پایگاه داده های PHP و MySQL طیف وسیعی از ابزارهای قدرتمند را در اختیار توسعه دهندگان وب قرار می دهند، اما امنیت همیشه باید یک نگرانی باشد. ایمن نگهداشتن اسکریپتهای PHP یک چالش است، و ارزش آن را دارد که قبل از استقرار کدهایی مانند این در یک وبسایت زنده، در مورد امنیت سمت سرور وقت بگذارید.