<?php
// ตั้งค่า header สำหรับการทำ CORS
header('Access-Control-Allow-Origin: *'); header('Content-Type: application/json; charset=utf-8');
// เชื่อมต่อฐานข้อมูล
$database_hostname = 'localhost';
$database_username = 'team';
$database_password = 'Te@m1234!';
$database_databasename = 'management';
// เช็คว่า extension mysqli ถูกโหลดและใช้งานอย่างถูกต้องหรือไม่
echo json_encode(array('status' => 'error', 'message' => 'The mysqli extension is not loaded.')); }
$connect_management = new mysqli($database_hostname, $database_username, $database_password, $database_databasename);
// ตรวจสอบว่ามีการส่งคำขอแบบ POST มาหรือไม่
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
// ตรวจสอบว่ามีการอัปโหลดรูปภาพหรือไม่
if (isset($_FILES['picture']) && $_FILES['picture']['error'] == 0) { $picture_name = $_FILES['picture']['name'];
$picture_tmp_name = $_FILES['picture']['tmp_name'];
$picture_destination = 'uploads/' . $picture_name;
// ตรวจสอบประเภทของไฟล์ภาพ
$allowed_types = ['image/jpeg', 'image/png', 'image/jpg'];
if (in_array($_FILES['picture']['type'], $allowed_types)) { // ย้ายไฟล์ภาพไปยังโฟลเดอร์ที่ต้องการ
// อ่านค่า trip_id จากข้อมูลที่ส่งมา
$trip_id = isset($_POST['trip_id']) ?
$_POST['trip_id'] : null;
if ($trip_id) {
// อัปเดตสถานะทริปใหม่
$sql_update_trip_status = "UPDATE ms_trip SET status_trip = status_trip + 1 WHERE id = ?";
$stmt_update_trip_status = $connect_management->prepare($sql_update_trip_status);
$stmt_update_trip_status->bind_param("i", $trip_id);
if ($stmt_update_trip_status->execute()) {
echo json_encode(array('status' => 'success', 'message' => 'Trip status updated successfully.')); } else {
echo json_encode(array('status' => 'error', 'message' => 'Failed to update trip status.')); }
} else {
echo json_encode(array('status' => 'error', 'message' => 'Trip ID is missing.')); }
} else {
echo json_encode(array('status' => 'error', 'message' => 'Error uploading picture.')); }
} else {
echo json_encode(array('status' => 'error', 'message' => 'Invalid file type. Only JPEG, JPG, and PNG files are allowed.')); }
} else {
echo json_encode(array('status' => 'error', 'message' => 'No picture uploaded.')); }
} else {
echo json_encode(array('status' => 'error', 'message' => 'Invalid request method.')); }
?>
<?php
// your code goes here
PD9waHAKLy8g4LiV4Lix4LmJ4LiH4LiE4LmI4LiyIGhlYWRlciDguKrguLPguKvguKPguLHguJrguIHguLLguKPguJfguLMgQ09SUwpoZWFkZXIoJ0FjY2Vzcy1Db250cm9sLUFsbG93LU9yaWdpbjogKicpOwpoZWFkZXIoJ0NvbnRlbnQtVHlwZTogYXBwbGljYXRpb24vanNvbjsgY2hhcnNldD11dGYtOCcpOwoKLy8g4LmA4LiK4Li34LmI4Lit4Lih4LiV4LmI4Lit4LiQ4Liy4LiZ4LiC4LmJ4Lit4Lih4Li54LilCiRkYXRhYmFzZV9ob3N0bmFtZSA9ICdsb2NhbGhvc3QnOwokZGF0YWJhc2VfdXNlcm5hbWUgPSAndGVhbSc7CiRkYXRhYmFzZV9wYXNzd29yZCA9ICdUZUBtMTIzNCEnOwokZGF0YWJhc2VfZGF0YWJhc2VuYW1lID0gJ21hbmFnZW1lbnQnOwoKLy8g4LmA4LiK4LmH4LiE4Lin4LmI4LiyIGV4dGVuc2lvbiBteXNxbGkg4LiW4Li54LiB4LmC4Lir4Lil4LiU4LmB4Lil4Liw4LmD4LiK4LmJ4LiH4Liy4LiZ4Lit4Lii4LmI4Liy4LiH4LiW4Li54LiB4LiV4LmJ4Lit4LiH4Lir4Lij4Li34Lit4LmE4Lih4LmICmlmICghZXh0ZW5zaW9uX2xvYWRlZCgnbXlzcWxpJykpIHsKICAgIGVjaG8ganNvbl9lbmNvZGUoYXJyYXkoJ3N0YXR1cycgPT4gJ2Vycm9yJywgJ21lc3NhZ2UnID0+ICdUaGUgbXlzcWxpIGV4dGVuc2lvbiBpcyBub3QgbG9hZGVkLicpKTsKICAgIGV4aXQ7Cn0KCiRjb25uZWN0X21hbmFnZW1lbnQgPSBuZXcgbXlzcWxpKCRkYXRhYmFzZV9ob3N0bmFtZSwgJGRhdGFiYXNlX3VzZXJuYW1lLCAkZGF0YWJhc2VfcGFzc3dvcmQsICRkYXRhYmFzZV9kYXRhYmFzZW5hbWUpOwpkYXRlX2RlZmF1bHRfdGltZXpvbmVfc2V0KCdBc2lhL0Jhbmdrb2snKTsKCi8vIOC4leC4o+C4p+C4iOC4quC4reC4muC4p+C5iOC4suC4oeC4teC4geC4suC4o+C4quC5iOC4h+C4hOC4s+C4guC4reC5geC4muC4miBQT1NUIOC4oeC4suC4q+C4o+C4t+C4reC5hOC4oeC5iAppZiAoJF9TRVJWRVJbJ1JFUVVFU1RfTUVUSE9EJ10gPT0gJ1BPU1QnKSB7CiAgICAvLyDguJXguKPguKfguIjguKrguK3guJrguKfguYjguLLguKHguLXguIHguLLguKPguK3guLHguJvguYLguKvguKXguJTguKPguLnguJvguKDguLLguJ7guKvguKPguLfguK3guYTguKHguYgKICAgIGlmIChpc3NldCgkX0ZJTEVTWydwaWN0dXJlJ10pICYmICRfRklMRVNbJ3BpY3R1cmUnXVsnZXJyb3InXSA9PSAwKSB7CiAgICAgICAgJHBpY3R1cmVfbmFtZSA9ICRfRklMRVNbJ3BpY3R1cmUnXVsnbmFtZSddOwogICAgICAgICRwaWN0dXJlX3RtcF9uYW1lID0gJF9GSUxFU1sncGljdHVyZSddWyd0bXBfbmFtZSddOwogICAgICAgICRwaWN0dXJlX2Rlc3RpbmF0aW9uID0gJ3VwbG9hZHMvJyAuICRwaWN0dXJlX25hbWU7CgogICAgICAgIC8vIOC4leC4o+C4p+C4iOC4quC4reC4muC4m+C4o+C4sOC5gOC4oOC4l+C4guC4reC4h+C5hOC4n+C4peC5jOC4oOC4suC4ngogICAgICAgICRhbGxvd2VkX3R5cGVzID0gWydpbWFnZS9qcGVnJywgJ2ltYWdlL3BuZycsICdpbWFnZS9qcGcnXTsKICAgICAgICBpZiAoaW5fYXJyYXkoJF9GSUxFU1sncGljdHVyZSddWyd0eXBlJ10sICRhbGxvd2VkX3R5cGVzKSkgewogICAgICAgICAgICAvLyDguKLguYnguLLguKLguYTguJ/guKXguYzguKDguLLguJ7guYTguJvguKLguLHguIfguYLguJ/guKXguYDguJTguK3guKPguYzguJfguLXguYjguJXguYnguK3guIfguIHguLLguKMKICAgICAgICAgICAgaWYgKG1vdmVfdXBsb2FkZWRfZmlsZSgkcGljdHVyZV90bXBfbmFtZSwgJHBpY3R1cmVfZGVzdGluYXRpb24pKSB7CiAgICAgICAgICAgICAgICAvLyDguK3guYjguLLguJnguITguYjguLIgdHJpcF9pZCDguIjguLLguIHguILguYnguK3guKHguLnguKXguJfguLXguYjguKrguYjguIfguKHguLIKICAgICAgICAgICAgICAgICR0cmlwX2lkID0gaXNzZXQoJF9QT1NUWyd0cmlwX2lkJ10pID8gJF9QT1NUWyd0cmlwX2lkJ10gOiBudWxsOwoKICAgICAgICAgICAgICAgIGlmICgkdHJpcF9pZCkgewogICAgICAgICAgICAgICAgICAgIC8vIOC4reC4seC4m+C5gOC4lOC4leC4quC4luC4suC4meC4sOC4l+C4o+C4tOC4m+C5g+C4q+C4oeC5iAogICAgICAgICAgICAgICAgICAgICRzcWxfdXBkYXRlX3RyaXBfc3RhdHVzID0gIlVQREFURSBtc190cmlwIFNFVCBzdGF0dXNfdHJpcCA9IHN0YXR1c190cmlwICsgMSBXSEVSRSBpZCA9ID8iOwogICAgICAgICAgICAgICAgICAgICRzdG10X3VwZGF0ZV90cmlwX3N0YXR1cyA9ICRjb25uZWN0X21hbmFnZW1lbnQtPnByZXBhcmUoJHNxbF91cGRhdGVfdHJpcF9zdGF0dXMpOwogICAgICAgICAgICAgICAgICAgICRzdG10X3VwZGF0ZV90cmlwX3N0YXR1cy0+YmluZF9wYXJhbSgiaSIsICR0cmlwX2lkKTsKICAgICAgICAgICAgICAgICAgICBpZiAoJHN0bXRfdXBkYXRlX3RyaXBfc3RhdHVzLT5leGVjdXRlKCkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgZWNobyBqc29uX2VuY29kZShhcnJheSgnc3RhdHVzJyA9PiAnc3VjY2VzcycsICdtZXNzYWdlJyA9PiAnVHJpcCBzdGF0dXMgdXBkYXRlZCBzdWNjZXNzZnVsbHkuJykpOwogICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGVjaG8ganNvbl9lbmNvZGUoYXJyYXkoJ3N0YXR1cycgPT4gJ2Vycm9yJywgJ21lc3NhZ2UnID0+ICdGYWlsZWQgdG8gdXBkYXRlIHRyaXAgc3RhdHVzLicpKTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgIGVjaG8ganNvbl9lbmNvZGUoYXJyYXkoJ3N0YXR1cycgPT4gJ2Vycm9yJywgJ21lc3NhZ2UnID0+ICdUcmlwIElEIGlzIG1pc3NpbmcuJykpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgZWNobyBqc29uX2VuY29kZShhcnJheSgnc3RhdHVzJyA9PiAnZXJyb3InLCAnbWVzc2FnZScgPT4gJ0Vycm9yIHVwbG9hZGluZyBwaWN0dXJlLicpKTsKICAgICAgICAgICAgfQogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGVjaG8ganNvbl9lbmNvZGUoYXJyYXkoJ3N0YXR1cycgPT4gJ2Vycm9yJywgJ21lc3NhZ2UnID0+ICdJbnZhbGlkIGZpbGUgdHlwZS4gT25seSBKUEVHLCBKUEcsIGFuZCBQTkcgZmlsZXMgYXJlIGFsbG93ZWQuJykpOwogICAgICAgIH0KICAgIH0gZWxzZSB7CiAgICAgICAgZWNobyBqc29uX2VuY29kZShhcnJheSgnc3RhdHVzJyA9PiAnZXJyb3InLCAnbWVzc2FnZScgPT4gJ05vIHBpY3R1cmUgdXBsb2FkZWQuJykpOwogICAgfQp9IGVsc2UgewogICAgZWNobyBqc29uX2VuY29kZShhcnJheSgnc3RhdHVzJyA9PiAnZXJyb3InLCAnbWVzc2FnZScgPT4gJ0ludmFsaWQgcmVxdWVzdCBtZXRob2QuJykpOwp9Cj8+Cjw/cGhwCgovLyB5b3VyIGNvZGUgZ29lcyBoZXJl