غالبًا عندما نريد إضافة معلومات جديدة لقاعدة البيانات، نستخدم method=post لإرسال هذه المعلومات.
في صفحة PHP الخاصة بإضافة المعلومات سنقوم بكتابة الأكواد التالية:
في البداية نقوم بتحديد معلومات الإتصال بقاعدة البيانات:
<?php
$servername = "localhost";
$username = "username";
$password = "password";
$database_name = "database_name";
ثم نقوم بإنشاء اتصال:
// إنشاء اتصال بقاعدة البيانات
$connection = new mysqli($servername, $username, $password, $database_name);
بعدها نتحقق أن المعلومات صحيحة، في حالة كانت المعلومات خاطئة سيظهر خطأ.
// التحقق من الإتصال
if ($connection->connect_error) {
die("Connection failed: " . $connection->connect_error);
}
ثم نقوم بتسجيل قيم username وpassword القادمة.
$username = $_POST["username"];
$password = $_POST["password"];
الآن سنقوم بإنشاء استعلام لإضافة المعلومات لقاعدة البيانات:
$sql = 'INSERT INTO users (username, password) VALUES ( ?, ? )';
ثم سنتحقق أن الإستعلام صحيح، وسنقوم بإضافة متغيري إسم المستخدم وكلمة المرور لإستعلام.
ثم نقوم بإرجاع قيمة success => true.
if ($statement = $connection->prepare($sql)) {
// نقوم بإضافة متغيري اسم المستخدم وكلمة السر للإستعلام
$statement->bind_param('ss', $username, $password);
// نطبق الإستعلام
if ($statement->execute()) {
$array = ["success" => true];
echo json_encode($array);
$statement->close();
$connection->close();
}
}
أما بالنسبة لقراءة البيانات فعادة ما نستخدم method=get.
سنقوم بإنشاء ملف جديد:
سنقوم في البداية بإنشاء متغيرات الإتصال بقاعدة البيانات والتحقق من الإتصال يتم بشكل جيد:
<?php
$servername = "localhost";
$username = "username";
$password = "password";
$database_name = "database_name";
// إنشاء اتصال بقاعدة البيانات
$connection = new mysqli($servername, $username, $password, $database_name);
// التحقق من الإتصال
if ($connection->connect_error) {
die("Connection failed: " . $connection->connect_error);
}
ثم سنقوم بقراءة رقم المستخدم من الرابط وتسجيله في متغير $id
$id = $_GET["id"];
ننشئ إستعلام للبحث عن مستخدم الذي يمتلك هذا id.
$sql = 'SELECT id, username, password FROM users WHERE id = ?';
ثم سنقوم بالتحقق من الإستعلام.
if ($statement = $connection->prepare($sql)) {
}
نقوم بإضافة رقم المستخدم للإستعلام.
if ($statement = $connection->prepare($sql)) {
$statement->bind_param('i', $id);
}
ثم سنقوم بتنفيذ الإستعلام وإرجاع قيمة ببيانات المستخدم.
if ($statement = $connection->prepare($sql)) {
$statement->bind_param('i', $id);
if ($statement->execute()) {
$result = $statement->get_result();
$user = $result->fetch_array(MYSQLI_ASSOC);
$json = json_encode($user);
echo $json;
}
}
ثم نغلق الإتصال بقاعدة البيانات.
if ($statement = $connection->prepare($sql)) {
$statement->bind_param('i', $id);
if ($statement->execute()) {
$result = $statement->get_result();
$user = $result->fetch_array(MYSQLI_ASSOC);
$json = json_encode($user);
echo $json;
$result->close();
$statement->close();
$connection->close();
}
}
اذا قمنا مثلًا بتسمية ملف قراءة البيانات ب read.php ووضعناه داخل مجلد users مثلًا فيمكننا الوصول إلى محتواه عن طريق الرابط:
http://localhost/users/read.php?id=5
وإذا قمنا بتسمية ملف إدخال البيانات ب insert.php ووضعناه في مجلد users فعلينا إرسال request من نوع POST إلى الرابط:
http://localhost/users/insert.php
يمكنك إرسال هذه request عن طريق postman أو عن أي لغة برمجية أخرى.
مثال من برنامج postman.
مرفق ملفي read.php و insert.php
users.zip