آموزش ساخت سیستم مدیریت قیمت طلا با PHP
در این مقاله، به بررسی گام به گام ساخت یک سیستم مدیریت قیمت طلا با استفاده از زبان برنامهنویسی PHP خواهیم پرداخت. این سیستم به شما امکان میدهد تا قیمتهای مختلف طلا را به صورت دستی یا از طریق API دریافت کنید، آنها را ذخیره کنید، ویرایش کنید و در وبسایت خود نمایش دهید. هدف از این آموزش، ارائه یک راهکار عملی و قابل توسعه برای مدیریت قیمت طلا در یک محیط وب است.
بخش اول: طراحی پایگاه داده
اولین قدم در ساخت این سیستم، طراحی پایگاه داده است. ما به یک جدول نیاز داریم که اطلاعات مربوط به قیمت طلا را ذخیره کند. این جدول میتواند شامل فیلدهای زیر باشد:
- id: شناسه یکتای هر رکورد (INT, AUTO_INCREMENT, PRIMARY KEY)
- type: نوع طلا (مثلاً سکه، شمش، زیورآلات) (VARCHAR)
- karat: عیار طلا (مثلاً 24، 18، 14) (VARCHAR)
- price: قیمت طلا (DECIMAL)
- date: تاریخ ثبت قیمت (DATE)
- time: زمان ثبت قیمت (TIME)
میتوانید این جدول را با استفاده از دستورات SQL زیر ایجاد کنید:
CREATE TABLE gold_prices ( id INT AUTO_INCREMENT PRIMARY KEY, type VARCHAR(255) NOT NULL, karat VARCHAR(10) NOT NULL, price DECIMAL(10, 2) NOT NULL, date DATE NOT NULL, time TIME NOT NULL );
بخش دوم: اتصال به پایگاه داده
برای تعامل با پایگاه داده، نیاز به ایجاد یک اتصال به آن داریم. در PHP، میتوان از PDO (PHP Data Objects) برای این منظور استفاده کرد. کد زیر یک مثال ساده از اتصال به پایگاه داده MySQL با استفاده از PDO است:
setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch (PDOException $e) {
echo "Connection failed: " . $e->getMessage();
}
?>
به جای مقادیر placeholder، اطلاعات مربوط به پایگاه داده خود را وارد کنید.
بخش سوم: ایجاد رابط کاربری برای مدیریت قیمتها
اکنون باید یک رابط کاربری برای مدیریت قیمتهای طلا ایجاد کنیم. این رابط کاربری باید به کاربران امکان دهد تا قیمتهای جدید را اضافه کنند، قیمتهای موجود را ویرایش کنند و قیمتهای قدیمی را حذف کنند. میتوان از فرمهای HTML برای این منظور استفاده کرد.
1. فرم افزودن قیمت جدید
<form action="add_price.php" method="post"> <label for="type">نوع طلا:</label> <input type="text" id="type" name="type" required><br> <label for="karat">عیار طلا:</label> <input type="text" id="karat" name="karat" required><br> <label for="price">قیمت طلا:</label> <input type="number" id="price" name="price" required><br> <label for="date">تاریخ:</label> <input type="date" id="date" name="date" required><br> <label for="time">زمان:</label> <input type="time" id="time" name="time" required><br> <input type="submit" value="افزودن قیمت"> </form>
2. فرم ویرایش قیمت
برای ویرایش قیمت، ابتدا باید قیمت مورد نظر را از پایگاه داده انتخاب کنید و سپس آن را در یک فرم نمایش دهید. فرم ویرایش مشابه فرم افزودن قیمت است، با این تفاوت که فیلدها با مقادیر فعلی قیمت پر شدهاند.
3. حذف قیمت
برای حذف قیمت، میتوانید یک لینک یا دکمه حذف در کنار هر قیمت در جدول نمایش قیمتها قرار دهید. با کلیک بر روی این لینک یا دکمه، یک اسکریپت PHP اجرا میشود که قیمت مورد نظر را از پایگاه داده حذف میکند.
بخش چهارم: پردازش فرمها و تعامل با پایگاه داده
اکنون باید فرمها را پردازش کنیم و با پایگاه داده تعامل کنیم. برای این منظور، از کد PHP زیر استفاده میکنیم:
1. add_price.php (افزودن قیمت جدید)
prepare("INSERT INTO gold_prices (type, karat, price, date, time) VALUES (?, ?, ?, ?, ?)");
$stmt->execute([$type, $karat, $price, $date, $time]);
echo "قیمت جدید با موفقیت اضافه شد.";
} catch (PDOException $e) {
echo "Error: " . $e->getMessage();
}
}
?>
2. edit_price.php (ویرایش قیمت)
این اسکریپت مشابه add_price.php است، با این تفاوت که به جای INSERT از UPDATE استفاده میکند.
3. delete_price.php (حذف قیمت)
prepare("DELETE FROM gold_prices WHERE id = ?");
$stmt->execute([$id]);
echo "قیمت با موفقیت حذف شد.";
} catch (PDOException $e) {
echo "Error: " . $e->getMessage();
}
}
?>
بخش پنجم: نمایش قیمتها
برای نمایش قیمتهای طلا، میتوانید از یک جدول HTML استفاده کنید. کد PHP زیر یک مثال ساده از نمایش قیمتها از پایگاه داده است:
query("SELECT * FROM gold_prices");
$prices = $stmt->fetchAll(PDO::FETCH_ASSOC);
echo "<table>";
echo "<thead>";
echo "<tr>";
echo "<th>نوع طلا</th>";
echo "<th>عیار طلا</th>";
echo "<th>قیمت</th>";
echo "<th>تاریخ</th>";
echo "<th>زمان</th>";
echo "<th>عملیات</th>";
echo "</tr>";
echo "</thead>";
echo "<tbody>";
foreach ($prices as $price) {
echo "<tr>";
echo "<td>" . $price["type"] . "</td>";
echo "<td>" . $price["karat"] . "</td>";
echo "<td>" . $price["price"] . "</td>";
echo "<td>" . $price["date"] . "</td>";
echo "<td>" . $price["time"] . "</td>";
echo "<td><a href='edit_price.php?id=" . $price["id"] . "'>ویرایش</a> | <a href='delete_price.php?id=" . $price["id"] . "'>حذف</a></td>";
echo "</tr>";
}
echo "</tbody>";
echo "</table>";
} catch (PDOException $e) {
echo "Error: " . $e->getMessage();
}
?>
بخش ششم: توسعههای بیشتر
این سیستم را میتوان با افزودن ویژگیهای زیر توسعه داد:
- دریافت قیمت از API: به جای وارد کردن دستی قیمتها، میتوانید از یک API برای دریافت قیمتهای بهروز طلا استفاده کنید.
- نمودار قیمت: میتوانید یک نمودار قیمت ایجاد کنید تا تغییرات قیمت طلا را در طول زمان نمایش دهید.
- اعلان قیمت: میتوانید به کاربران امکان دهید تا اعلان قیمت دریافت کنند.
- مدیریت کاربران: میتوانید یک سیستم مدیریت کاربران ایجاد کنید تا دسترسی به سیستم را کنترل کنید.
این آموزش یک نقطه شروع برای ساخت یک سیستم مدیریت قیمت طلا با PHP است. با استفاده از این آموزش و با کمی خلاقیت، میتوانید یک سیستم قدرتمند و کاربردی برای مدیریت قیمت طلا ایجاد کنید.
